An organization is designing a multi-environment infrastructure deployment strategy on Google Cloud using Terraform. They need to establish environment isolation between staging and production while ensuring state file integrity and maintaining least-privilege administrative access. Which TWO architectural and operational practices should the team implement to satisfy these requirements? (Select TWO)
- Configure isolated Cloud Storage buckets with Object Versioning enabled for each environment's remote Terraform backend.Answer
- Grant dedicated pipeline service accounts fine-grained predefined IAM roles specific to each environment rather than primitive roles.Answer
- CGrant the deployment service account the primitive Owner role (roles/owner) across all projects to streamline access management.
- DStore state files for all environments in a single local unversioned directory on the CI/CD runner to minimize storage latency.
Answer
The team should configure isolated Cloud Storage buckets with Object Versioning enabled for each environment's remote backend and assign fine-grained predefined IAM roles to dedicated pipeline service accounts.
Isolating Terraform remote backends into environment-specific Cloud Storage buckets with Object Versioning guarantees state protection, concurrency locking via Cloud Storage, and environment isolation. Furthermore, assigning fine-grained predefined IAM roles to dedicated environment service accounts enforces least privilege.
Step-by-Step Solution
Key Concept
Infrastructure as Code environment isolation, remote state management with Cloud Storage, and least-privilege IAM configuration.
Estimated Time:1m 30s