An online retail enterprise uses Google Cloud resource hierarchy to manage environments. To reduce risks associated with unauthorized data movement, the security team needs to prevent service accounts created in non-production projects from attached usage or impersonation across project boundaries into production projects. This restriction must apply to all existing and future projects under the 'Non-Production' folder hierarchy without interrupting production service account workflows. Which solution should the principal cloud architect recommend?
- AGrant project leads the Owner primitive IAM role at the 'Non-Production' folder level to allow them to manually audit and block cross-project service account access.
- BDefine a VPC Service Controls perimeter around the non-production projects to block service account access across projects.
- Enforce the boolean Organization Policy constraint `constraints/iam.disableCrossProjectServiceAccountUsage` at the 'Non-Production' folder level.Answer
- DGrant developers the Service Account Admin role (`roles/iam.serviceAccountAdmin`) across the 'Non-Production' folder so they can configure individual service account keys.
Answer
Enforce the boolean Organization Policy constraint `constraints/iam.disableCrossProjectServiceAccountUsage` at the 'Non-Production' folder level.
Enforcing `constraints/iam.disableCrossProjectServiceAccountUsage` at the folder level is the Google-recommended approach to systematically prevent resources in child projects under that folder from attaching or using service accounts owned by external projects.
Step-by-Step Solution
Key Concept
Organization Policy Constraints and Resource Hierarchy Inheritance