OpenTofu Assessment: Advanced Security (EN)
This assessment checks the level Advanced Security. It combines conceptual questions, diagnostic cases and small design decisions.
Rules
- Do not use production secrets.
- Justify every answer with OpenTofu terminology.
- Separate configuration, plan, state, backend, provider and real infrastructure.
- Name recovery steps when you mention risky state or apply cases.
Questions
Question 01: State-Security
Describe a realistic OpenTofu scenario for State-Security. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 02: Secrets
Describe a realistic OpenTofu scenario for Secrets. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 03: Provider-Pinning
Describe a realistic OpenTofu scenario for Provider-Pinning. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 04: Supply Chain
Describe a realistic OpenTofu scenario for Supply Chain. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 05: Least Privilege
Describe a realistic OpenTofu scenario for Least Privilege. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 06: Incident Response
Describe a realistic OpenTofu scenario for Incident Response. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 07: State-Security
Describe a realistic OpenTofu scenario for State-Security. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 08: Secrets
Describe a realistic OpenTofu scenario for Secrets. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 09: Provider-Pinning
Describe a realistic OpenTofu scenario for Provider-Pinning. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 10: Supply Chain
Describe a realistic OpenTofu scenario for Supply Chain. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 11: Least Privilege
Describe a realistic OpenTofu scenario for Least Privilege. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 12: Incident Response
Describe a realistic OpenTofu scenario for Incident Response. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 13: State-Security
Describe a realistic OpenTofu scenario for State-Security. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 14: Secrets
Describe a realistic OpenTofu scenario for Secrets. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 15: Provider-Pinning
Describe a realistic OpenTofu scenario for Provider-Pinning. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 16: Supply Chain
Describe a realistic OpenTofu scenario for Supply Chain. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 17: Least Privilege
Describe a realistic OpenTofu scenario for Least Privilege. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 18: Incident Response
Describe a realistic OpenTofu scenario for Incident Response. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 19: State-Security
Describe a realistic OpenTofu scenario for State-Security. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 20: Secrets
Describe a realistic OpenTofu scenario for Secrets. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 21: Provider-Pinning
Describe a realistic OpenTofu scenario for Provider-Pinning. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 22: Supply Chain
Describe a realistic OpenTofu scenario for Supply Chain. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 23: Least Privilege
Describe a realistic OpenTofu scenario for Least Privilege. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 24: Incident Response
Describe a realistic OpenTofu scenario for Incident Response. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 25: State-Security
Describe a realistic OpenTofu scenario for State-Security. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 26: Secrets
Describe a realistic OpenTofu scenario for Secrets. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 27: Provider-Pinning
Describe a realistic OpenTofu scenario for Provider-Pinning. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 28: Supply Chain
Describe a realistic OpenTofu scenario for Supply Chain. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 29: Least Privilege
Describe a realistic OpenTofu scenario for Least Privilege. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 30: Incident Response
Describe a realistic OpenTofu scenario for Incident Response. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 31: State-Security
Describe a realistic OpenTofu scenario for State-Security. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 32: Secrets
Describe a realistic OpenTofu scenario for Secrets. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 33: Provider-Pinning
Describe a realistic OpenTofu scenario for Provider-Pinning. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 34: Supply Chain
Describe a realistic OpenTofu scenario for Supply Chain. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 35: Least Privilege
Describe a realistic OpenTofu scenario for Least Privilege. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 36: Incident Response
Describe a realistic OpenTofu scenario for Incident Response. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 37: State-Security
Describe a realistic OpenTofu scenario for State-Security. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 38: Secrets
Describe a realistic OpenTofu scenario for Secrets. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 39: Provider-Pinning
Describe a realistic OpenTofu scenario for Provider-Pinning. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Question 40: Supply Chain
Describe a realistic OpenTofu scenario for Supply Chain. Which module is affected, which provider interacts, what state or security impact appears and which recovery path is appropriate?
Practical Case Study
You inherit an IaC platform with multiple root modules, local state, unclear provider versions and possible secrets in outputs. Build a review plan covering modules, providers, backends, state, policies, CI, drift, secrets and recovery.
Review Checklist for Advanced Security Assessment
- 01. document configuration and desired state: record which module, provider, resource, state and backend path are affected.
- 02. check provider requirement: record which module, provider, resource, state and backend path are affected.
- 03. explain state impact: record which module, provider, resource, state and backend path are affected.
- 04. assess plan diff: record which module, provider, resource, state and backend path are affected.
- 05. describe backend and locking model: record which module, provider, resource, state and backend path are affected.
- 06. check module boundary: record which module, provider, resource, state and backend path are affected.
- 07. assess variable and output: record which module, provider, resource, state and backend path are affected.
- 08. prove drift: record which module, provider, resource, state and backend path are affected.
- 09. mark secret risk: record which module, provider, resource, state and backend path are affected.
- 10. name policy or CI gate: record which module, provider, resource, state and backend path are affected.
- 11. write down rollback or recovery path: record which module, provider, resource, state and backend path are affected.
- 12. state a team rule: record which module, provider, resource, state and backend path are affected.
- 13. document configuration and desired state: record which module, provider, resource, state and backend path are affected.
- 14. check provider requirement: record which module, provider, resource, state and backend path are affected.
- 15. explain state impact: record which module, provider, resource, state and backend path are affected.
- 16. assess plan diff: record which module, provider, resource, state and backend path are affected.
- 17. describe backend and locking model: record which module, provider, resource, state and backend path are affected.
- 18. check module boundary: record which module, provider, resource, state and backend path are affected.
- 19. assess variable and output: record which module, provider, resource, state and backend path are affected.
- 20. prove drift: record which module, provider, resource, state and backend path are affected.
- 21. mark secret risk: record which module, provider, resource, state and backend path are affected.
- 22. name policy or CI gate: record which module, provider, resource, state and backend path are affected.
- 23. write down rollback or recovery path: record which module, provider, resource, state and backend path are affected.
- 24. state a team rule: record which module, provider, resource, state and backend path are affected.
- 25. document configuration and desired state: record which module, provider, resource, state and backend path are affected.
- 26. check provider requirement: record which module, provider, resource, state and backend path are affected.
- 27. explain state impact: record which module, provider, resource, state and backend path are affected.
- 28. assess plan diff: record which module, provider, resource, state and backend path are affected.
- 29. describe backend and locking model: record which module, provider, resource, state and backend path are affected.
- 30. check module boundary: record which module, provider, resource, state and backend path are affected.
- 31. assess variable and output: record which module, provider, resource, state and backend path are affected.
- 32. prove drift: record which module, provider, resource, state and backend path are affected.
- 33. mark secret risk: record which module, provider, resource, state and backend path are affected.
- 34. name policy or CI gate: record which module, provider, resource, state and backend path are affected.
- 35. write down rollback or recovery path: record which module, provider, resource, state and backend path are affected.
- 36. state a team rule: record which module, provider, resource, state and backend path are affected.
Practice Appendix: Advanced Security Assessment
This appendix provides a backlog for longer trainings, reviews and repetition. Each task is small enough to verify with local HCL artifacts and a Git repository.
A001. State-Security
- Task: document configuration and desired state and explicitly relate the observation to
State-Security. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A002. Secrets
- Task: check provider requirement and explicitly relate the observation to
Secrets. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A003. Provider-Pinning
- Task: explain state impact and explicitly relate the observation to
Provider-Pinning. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A004. Supply Chain
- Task: assess plan diff and explicitly relate the observation to
Supply Chain. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A005. Least Privilege
- Task: describe backend and locking model and explicitly relate the observation to
Least Privilege. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A006. Incident Response
- Task: check module boundary and explicitly relate the observation to
Incident Response. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A007. OpenTofu
- Task: assess variable and output and explicitly relate the observation to
OpenTofu. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A008. Configuration
- Task: prove drift and explicitly relate the observation to
Configuration. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A009. Root Module
- Task: mark secret risk and explicitly relate the observation to
Root Module. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A010. Provider
- Task: name policy or CI gate and explicitly relate the observation to
Provider. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A011. Resource
- Task: write down rollback or recovery path and explicitly relate the observation to
Resource. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A012. Data Source
- Task: state a team rule and explicitly relate the observation to
Data Source. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A013. Variable
- Task: document configuration and desired state and explicitly relate the observation to
Variable. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A014. Output
- Task: check provider requirement and explicitly relate the observation to
Output. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A015. Local Value
- Task: explain state impact and explicitly relate the observation to
Local Value. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A016. State
- Task: assess plan diff and explicitly relate the observation to
State. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A017. Backend
- Task: describe backend and locking model and explicitly relate the observation to
Backend. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A018. Plan
- Task: check module boundary and explicitly relate the observation to
Plan. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A019. Apply
- Task: assess variable and output and explicitly relate the observation to
Apply. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A020. Module
- Task: prove drift and explicitly relate the observation to
Module. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A021. Meta-Argument
- Task: mark secret risk and explicitly relate the observation to
Meta-Argument. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A022. TACOS
- Task: name policy or CI gate and explicitly relate the observation to
TACOS. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A023. State-Security
- Task: write down rollback or recovery path and explicitly relate the observation to
State-Security. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A024. Secrets
- Task: state a team rule and explicitly relate the observation to
Secrets. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A025. Provider-Pinning
- Task: document configuration and desired state and explicitly relate the observation to
Provider-Pinning. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A026. Supply Chain
- Task: check provider requirement and explicitly relate the observation to
Supply Chain. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A027. Least Privilege
- Task: explain state impact and explicitly relate the observation to
Least Privilege. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A028. Incident Response
- Task: assess plan diff and explicitly relate the observation to
Incident Response. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A029. OpenTofu
- Task: describe backend and locking model and explicitly relate the observation to
OpenTofu. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A030. Configuration
- Task: check module boundary and explicitly relate the observation to
Configuration. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A031. Root Module
- Task: assess variable and output and explicitly relate the observation to
Root Module. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A032. Provider
- Task: prove drift and explicitly relate the observation to
Provider. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A033. Resource
- Task: mark secret risk and explicitly relate the observation to
Resource. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A034. Data Source
- Task: name policy or CI gate and explicitly relate the observation to
Data Source. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A035. Variable
- Task: write down rollback or recovery path and explicitly relate the observation to
Variable. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A036. Output
- Task: state a team rule and explicitly relate the observation to
Output. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A037. Local Value
- Task: document configuration and desired state and explicitly relate the observation to
Local Value. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A038. State
- Task: check provider requirement and explicitly relate the observation to
State. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A039. Backend
- Task: explain state impact and explicitly relate the observation to
Backend. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A040. Plan
- Task: assess plan diff and explicitly relate the observation to
Plan. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A041. Apply
- Task: describe backend and locking model and explicitly relate the observation to
Apply. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A042. Module
- Task: check module boundary and explicitly relate the observation to
Module. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A043. Meta-Argument
- Task: assess variable and output and explicitly relate the observation to
Meta-Argument. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A044. TACOS
- Task: prove drift and explicitly relate the observation to
TACOS. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A045. State-Security
- Task: mark secret risk and explicitly relate the observation to
State-Security. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A046. Secrets
- Task: name policy or CI gate and explicitly relate the observation to
Secrets. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A047. Provider-Pinning
- Task: write down rollback or recovery path and explicitly relate the observation to
Provider-Pinning. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A048. Supply Chain
- Task: state a team rule and explicitly relate the observation to
Supply Chain. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A049. Least Privilege
- Task: document configuration and desired state and explicitly relate the observation to
Least Privilege. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A050. Incident Response
- Task: check provider requirement and explicitly relate the observation to
Incident Response. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A051. OpenTofu
- Task: explain state impact and explicitly relate the observation to
OpenTofu. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A052. Configuration
- Task: assess plan diff and explicitly relate the observation to
Configuration. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A053. Root Module
- Task: describe backend and locking model and explicitly relate the observation to
Root Module. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A054. Provider
- Task: check module boundary and explicitly relate the observation to
Provider. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A055. Resource
- Task: assess variable and output and explicitly relate the observation to
Resource. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A056. Data Source
- Task: prove drift and explicitly relate the observation to
Data Source. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A057. Variable
- Task: mark secret risk and explicitly relate the observation to
Variable. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A058. Output
- Task: name policy or CI gate and explicitly relate the observation to
Output. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A059. Local Value
- Task: write down rollback or recovery path and explicitly relate the observation to
Local Value. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A060. State
- Task: state a team rule and explicitly relate the observation to
State. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A061. Backend
- Task: document configuration and desired state and explicitly relate the observation to
Backend. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A062. Plan
- Task: check provider requirement and explicitly relate the observation to
Plan. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A063. Apply
- Task: explain state impact and explicitly relate the observation to
Apply. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A064. Module
- Task: assess plan diff and explicitly relate the observation to
Module. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A065. Meta-Argument
- Task: describe backend and locking model and explicitly relate the observation to
Meta-Argument. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A066. TACOS
- Task: check module boundary and explicitly relate the observation to
TACOS. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A067. State-Security
- Task: assess variable and output and explicitly relate the observation to
State-Security. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A068. Secrets
- Task: prove drift and explicitly relate the observation to
Secrets. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A069. Provider-Pinning
- Task: mark secret risk and explicitly relate the observation to
Provider-Pinning. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A070. Supply Chain
- Task: name policy or CI gate and explicitly relate the observation to
Supply Chain. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A071. Least Privilege
- Task: write down rollback or recovery path and explicitly relate the observation to
Least Privilege. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A072. Incident Response
- Task: state a team rule and explicitly relate the observation to
Incident Response. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A073. OpenTofu
- Task: document configuration and desired state and explicitly relate the observation to
OpenTofu. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A074. Configuration
- Task: check provider requirement and explicitly relate the observation to
Configuration. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A075. Root Module
- Task: explain state impact and explicitly relate the observation to
Root Module. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A076. Provider
- Task: assess plan diff and explicitly relate the observation to
Provider. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A077. Resource
- Task: describe backend and locking model and explicitly relate the observation to
Resource. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
A078. Data Source
- Task: check module boundary and explicitly relate the observation to
Data Source. - Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
- Operations question: What would a wrong assumption change in dev, staging, prod and CI?
- Security question: Which credentials, state values, provider versions or outputs would be critical?
- Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
Official Sources and Scope
The material is aligned with public OpenTofu documentation. Cloud providers, TACOS platforms, policy engines and secret tools are mentioned only where they explain common OpenTofu workflows. Example artifacts are not instructions to execute against production cloud accounts.
- OpenTofu: https://opentofu.org/
- OpenTofu Language Documentation: https://opentofu.org/docs/language/
- Provider Requirements: https://opentofu.org/docs/language/providers/requirements/
- State: https://opentofu.org/docs/language/state/
- Backend Configuration: https://opentofu.org/docs/language/settings/backends/configuration/
- OpenTofu v1.x Compatibility Promises: https://opentofu.org/docs/language/v1-compatibility-promises/
- OpenTofu at CNCF: https://www.cncf.io/projects/opentofu/
- Linux Foundation: Getting Started with OpenTofu: https://training.linuxfoundation.org/express-learning/getting-started-with-opentofu-lfel1009/
- Linux Foundation Certification Catalog: https://training.linuxfoundation.org/certification-catalog/
Additional Review Drills
Use these drills when the primary task is complete and the learner needs another pass over operational reasoning. They are intentionally evidence-oriented and can be answered with local OpenTofu artifacts.
Drill 01: root module
- State which module, provider, backend or state boundary is affected by
root module. - Name one command or HCL field that produces evidence.
- Explain what can be concluded from that evidence and what cannot be concluded from it.
- Describe the safest recovery path for a shared IaC platform.
Drill 02: provider version
- State which module, provider, backend or state boundary is affected by
provider version. - Name one command or HCL field that produces evidence.
- Explain what can be concluded from that evidence and what cannot be concluded from it.
- Describe the safest recovery path for a shared IaC platform.
Drill 03: state snapshot
- State which module, provider, backend or state boundary is affected by
state snapshot. - Name one command or HCL field that produces evidence.
- Explain what can be concluded from that evidence and what cannot be concluded from it.
- Describe the safest recovery path for a shared IaC platform.
Drill 04: backend locking
- State which module, provider, backend or state boundary is affected by
backend locking. - Name one command or HCL field that produces evidence.
- Explain what can be concluded from that evidence and what cannot be concluded from it.
- Describe the safest recovery path for a shared IaC platform.
Drill 05: plan diff
- State which module, provider, backend or state boundary is affected by
plan diff. - Name one command or HCL field that produces evidence.
- Explain what can be concluded from that evidence and what cannot be concluded from it.
- Describe the safest recovery path for a shared IaC platform.
Drill 06: module output
- State which module, provider, backend or state boundary is affected by
module output. - Name one command or HCL field that produces evidence.
- Explain what can be concluded from that evidence and what cannot be concluded from it.
- Describe the safest recovery path for a shared IaC platform.
Drill 07: sensitive value
- State which module, provider, backend or state boundary is affected by
sensitive value. - Name one command or HCL field that produces evidence.
- Explain what can be concluded from that evidence and what cannot be concluded from it.
- Describe the safest recovery path for a shared IaC platform.
Drill 08: policy gate
- State which module, provider, backend or state boundary is affected by
policy gate. - Name one command or HCL field that produces evidence.
- Explain what can be concluded from that evidence and what cannot be concluded from it.
- Describe the safest recovery path for a shared IaC platform.
Drill 09: import
- State which module, provider, backend or state boundary is affected by
import. - Name one command or HCL field that produces evidence.
- Explain what can be concluded from that evidence and what cannot be concluded from it.
- Describe the safest recovery path for a shared IaC platform.
Drill 10: moved block
- State which module, provider, backend or state boundary is affected by
moved block. - Name one command or HCL field that produces evidence.
- Explain what can be concluded from that evidence and what cannot be concluded from it.
- Describe the safest recovery path for a shared IaC platform.
Drill 11: TACOS run
- State which module, provider, backend or state boundary is affected by
TACOS run. - Name one command or HCL field that produces evidence.
- Explain what can be concluded from that evidence and what cannot be concluded from it.
- Describe the safest recovery path for a shared IaC platform.
Drill 12: recovery
- State which module, provider, backend or state boundary is affected by
recovery. - Name one command or HCL field that produces evidence.
- Explain what can be concluded from that evidence and what cannot be concluded from it.
- Describe the safest recovery path for a shared IaC platform.
Drill 13: root module
- State which module, provider, backend or state boundary is affected by
root module. - Name one command or HCL field that produces evidence.
- Explain what can be concluded from that evidence and what cannot be concluded from it.
- Describe the safest recovery path for a shared IaC platform.
Drill 14: provider version
- State which module, provider, backend or state boundary is affected by
provider version. - Name one command or HCL field that produces evidence.
- Explain what can be concluded from that evidence and what cannot be concluded from it.
- Describe the safest recovery path for a shared IaC platform.
Drill 15: state snapshot
- State which module, provider, backend or state boundary is affected by
state snapshot. - Name one command or HCL field that produces evidence.
- Explain what can be concluded from that evidence and what cannot be concluded from it.
- Describe the safest recovery path for a shared IaC platform.
Drill 16: backend locking
- State which module, provider, backend or state boundary is affected by
backend locking. - Name one command or HCL field that produces evidence.
- Explain what can be concluded from that evidence and what cannot be concluded from it.
- Describe the safest recovery path for a shared IaC platform.