An enterprise organization manages a Google Cloud resource hierarchy containing a Folder named 'Data-Analytics' with two child projects: 'analytics-prod' and 'analytics-dev'. A compliance audit team requires permissions to run SQL queries and inspect table data strictly in the 'analytics-prod' project. Additionally, the auditors require read-only visibility into Cloud Storage bucket metadata across both projects. Security policy strictly forbids binding IAM roles at the Folder level to prevent unintended inherited access. Which IAM role assignment configuration adheres to the principle of least privilege while complying with the resource hierarchy constraint?
- Grant the BigQuery Job User (roles/bigquery.jobUser) and BigQuery Data Viewer (roles/bigquery.dataViewer) roles on 'analytics-prod', and grant the Storage Object Viewer (roles/storage.objectViewer) role on both 'analytics-prod' and 'analytics-dev' individually.Answer
- BGrant the BigQuery Admin (roles/bigquery.admin) role on 'analytics-prod' and grant the Storage Object Viewer (roles/storage.objectViewer) role at the 'Data-Analytics' folder level.
- CGrant the Editor (roles/editor) primitive role on 'analytics-prod' and grant the Viewer (roles/viewer) primitive role on 'analytics-dev'.
- DGrant the BigQuery Job User (roles/bigquery.jobUser) and BigQuery Data Viewer (roles/bigquery.dataViewer) roles on 'analytics-prod', and grant the Viewer (roles/viewer) primitive role on both 'analytics-prod' and 'analytics-dev' individually.
Answer
Grant the BigQuery Job User (roles/bigquery.jobUser) and BigQuery Data Viewer (roles/bigquery.dataViewer) roles on 'analytics-prod', and grant the Storage Object Viewer (roles/storage.objectViewer) role on both 'analytics-prod' and 'analytics-dev' individually.
The correct option applies fine-grained predefined IAM roles (BigQuery Job User, BigQuery Data Viewer, and Storage Object Viewer) at the specific project level scope requested. This fulfills all operational requirements while honoring the restriction against folder-level IAM bindings and avoiding over-privileged primitive roles.
Step-by-Step Solution
Key Concept
Applying Predefined IAM Roles at Project Level vs Folder Inheritance and Primitive Roles