Google Cloud Least Privilege Policies
Cloudaware’s GCP integration is designed to use read‑only access wherever possible. Use the patterns below to grant only the minimum rights required for each scenario.
Identity Model
- Use one or more dedicated service accounts for Cloudaware (for example,
cloudaware-service-account). - Assign IAM roles to those service accounts at the organization, folder, or project level depending on where you want Cloudaware to collect resources.
- Manage which projects are actually collected from within Cloudaware (via service account assignment to org/folder/project objects).
Baseline Discovery Access (Required)
At minimum, Cloudaware needs read‑only access to compute, networking, storage, IAM metadata, and Resource Manager to build the CMDB.
- Assign the role:
- Viewer
roles/viewerat the project level, or - Equivalent viewer roles at folder or organization level if you want automatic discovery of projects under those scopes.
- Viewer
- If using organization‑level discovery, ensure the service account has viewer‑type permissions for:
- Organization, folders, and projects (for example, Organization - Viewer, Folder - Viewer, etc.).
Cloudaware will use these permissions to list resources and retrieve configuration, not to modify them.
To learn more about IAM roles and related permissions in Google Cloud, refer to the Google Cloud documentation.
Optional Extended Permissions by Feature
Enable the following only if you plan to use the corresponding Cloudaware features.
Organizations & Hierarchy
To allow Cloudaware to discover organizations, folders, and projects and show the hierarchy in tree view:
- Assign Viewer roles at the organization level, including:
- Organization - Viewer
roles/resourcemanager.organizationViewer - Folder - Viewer
roles/resourcemanager.folderViewer - Viewer
roles/viewer
- Organization - Viewer
This enables Cloudaware to auto‑discover projects within the organization.
Billing Accounts
To allow Cloudaware to inventory billing accounts and related data:
- On each relevant billing account, grant the service account:
- Billing Account Viewer
roles/billing.viewer.
- Billing Account Viewer
Backups
To use Cloudaware backup features for Compute Engine disks and snapshots, include the following permissions (usually via a custom role attached to the service account):
compute.disks.getcompute.disks.createSnapshotcompute.disks.listcompute.disks.setLabelscompute.snapshots.createcompute.snapshots.deletecompute.snapshots.getcompute.snapshots.listcompute.snapshots.setLabelscompute.zones.getcompute.zones.list
Tagging (Labels)
To manage labels (tags) on resources directly from Cloudaware, add label‑related permissions to the custom role, such as:
bigquery.datasets.updatebigquery.tables.updatecloudsql.instances.updatecompute.addresses.setLabelscompute.disks.setLabelscompute.forwardingRules.setLabelscompute.globalAddresses.setLabelscompute.globalForwardingRules.setLabelscompute.images.setLabelscompute.instances.setLabelscompute.snapshots.setLabelscompute.targetVpnGateways.setLabelscompute.vpnTunnels.setLabelsdataproc.clusters.updatedataproc.jobs.updatecloudkms.cryptoKeys.updatestorage.buckets.update
Scope such roles to only those projects where you intend to allow Cloudaware‑driven backups or tagging.
To learn how to work with tags in Cloudaware, see Cloudaware Tag Analyzer.
Scoping Recommendations
- Prefer service accounts dedicated to Cloudaware rather than reusing existing accounts.
- Grant broad viewer roles at org/folder level only when you explicitly want Cloudaware to see the full hierarchy; otherwise, keep roles at the project level.
- Use custom roles to bundle backup and tagging permissions instead of granting wide admin roles.
- Review service account permissions periodically, especially for custom roles, and remove unused capabilities to keep the privilege footprint small.