An enterprise operations team is scaling its Google Cloud footprint and managing infrastructure deployments across multiple Google Kubernetes Engine (GKE) private clusters. Currently, operators execute Terraform from local workstations without remote state locking, utilize primitive Editor permissions, and access GKE control planes over public endpoints without restriction. As a Cloud Architect advising the operations team, which TWO architectural actions should you recommend to establish least privilege, secure cluster access, and prevent state corruption?
- Migrate Terraform state management to a Google Cloud Storage bucket with object versioning and state locking enabled via Cloud KMS CMEK.Cevap
- Restrict private GKE cluster control plane access using Authorized Networks to designated internal CIDR ranges and grant operators fine-grained roles such as Kubernetes Engine Developer alongside Service Account User permissions.Cevap
- CAssign the primitive Owner IAM role at the project resource level to operations team members to guarantee uninhibited deployment capabilities across GKE cluster resources.
- DGrant operators the Service Account Admin role across target projects so deployment daemons can freely manipulate service account keys without explicit impersonation bindings.
- EStore Terraform state files in a shared version control repository to allow developers to inspect and resolve state conflicts locally prior to pipeline execution.
Cevap
The correct recommendations are to migrate Terraform state to a Cloud Storage bucket with state locking enabled, restrict GKE control plane access via Authorized Networks, and assign fine-grained IAM roles (Kubernetes Engine Developer and Service Account User) instead of primitive or administrative roles.
Establishing Cloud Storage as a remote Terraform backend ensures state locking and automated concurrency control during pipeline execution. Restricting private GKE control plane endpoints via Authorized Networks prevents unauthorized network traffic, and applying fine-grained roles (Kubernetes Engine Developer paired with Service Account User) satisfies the principle of least privilege without granting dangerous administrative permissions.
Adım Adım Çözüm
Anahtar Kavram
Advising DevOps on Secure Infrastructure Management (IaC State Backend & GKE Control Plane Security)