A financial analytics company organizes its Google Cloud resources using a dedicated folder named 'Production Payments' containing dozens of project workloads. The security team needs to deploy an automated audit worker on a Compute Engine instance in a separate 'Security Operations' project. This audit worker must inspect Cloud Storage bucket IAM policies and list bucket metadata across all projects in the 'Production Payments' folder, without being allowed to read object contents or modify bucket settings. Additionally, application developers must be able to attach this audit service account to virtual machines in the Security Operations project without being granted administrative access over the service account itself or broad access across the folder. Which configuration strategy satisfies least privilege and operational security requirements?
- Create a custom IAM role with storage.buckets.getIamPolicy and storage.buckets.list permissions and bind it to the audit service account at the Production Payments folder level; then grant the roles/iam.serviceAccountUser role on the audit service account resource to the developer group.Cevap
- BAssign the primitive roles/viewer role to the audit service account at the Production Payments folder level, and grant the primitive roles/editor role on the Security Operations project to the developer group.
- CCreate a custom IAM role with storage.buckets.getIamPolicy and storage.buckets.list permissions and bind it to the audit service account at the Production Payments folder level, but grant the roles/iam.serviceAccountAdmin role on the Security Operations project to the developer group.
- DAssign the predefined roles/storage.objectViewer role to the audit service account at the Organization root node, relying on IAM permissions alone to prevent data exfiltration to external storage buckets.