A company manages a Google Cloud resource hierarchy containing an Organization root, a top-level Folder named 'Finance', and a child Project named 'audit-logs-prod'. To enforce data sovereignty compliance, an Organization Policy enforcing the Resource Locations constraint (`constraints/gcp.resourceLocations`) is applied at the 'Finance' Folder level, restricting resource creation strictly to `in:eu-locations`.
A cloud engineer needs to allow the 'audit-logs-prod' project to deploy Cloud Storage buckets in `us-east1` for cross-region disaster recovery testing. The engineer grants the project lead the primitive Owner role (`roles/owner`) on 'audit-logs-prod' and configures the project-level Organization Policy to add `us-east1` to the allowed values list while setting `inheritFromParent: true`. However, bucket creation in `us-east1` continues to fail with an Organization Policy violation error.
What is the root cause of this failure, and how should it be resolved?
- The project inherits the parent folder's policy restriction because `inheritFromParent` is set to true; to allow `us-east1`, the project-level Organization Policy must set `inheritFromParent: false` to override the parent list policy and explicitly define the allowed values.Answer
- BIAM policy inheritance automatically overrides Organization Policies; the project lead must revoke the inherited Viewer role at the 'Finance' folder level so that the project-level Owner role can bypass the resource location constraint.
- COrganization Policies apply only to service accounts; because the project lead is a human user account, granting the Organization Policy Admin role (`roles/orgpolicy.policyAdmin`) directly to the user on the project will grant an exemption from the location constraint.
- DPrimitive roles like Owner are blocked by Organization Policies, but granting the predefined Storage Admin role (`roles/storage.admin`) at the Organization root level will grant the necessary permissions to override Organization Policy constraints.