Resource attributes for IAM Conditions

This topic contains a list of values that can be used for resource attributes in a condition, including string values for resource service, resource type, and the format for resource name strings.

You can use resource attributes to change the scope of the grant provided by a role binding. When a role contains permissions that apply to different kinds of resources, a condition can grant a subset of the role's permissions based on the resource service, resource type, and resource name.

Resource attributes are available for the Trusted Cloud by S3NS services and resource types that are listed on this page. Other services and resource types do not recognize resource attributes.

For more information about Identity and Access Management (IAM) Conditions, see the following:

Resource service values

The following table lists the values that the resource service attribute can contain.

Resource service value REST reference
bigquery.googleapis.com API reference
bigqueryreservation.googleapis.com API reference
cloudkms.googleapis.com API reference
cloudresourcemanager.googleapis.com API reference
compute.googleapis.com API reference
container.googleapis.com API reference
logging.googleapis.com API reference
sqladmin.googleapis.com API reference
storage.googleapis.com API reference

Resource type values

The following table lists the values that the resource type attribute can contain.

Resource type value Reference
bigquery.googleapis.com/Dataset Read more
bigquery.googleapis.com/Model Read more
bigquery.googleapis.com/Routine Read more
bigquery.googleapis.com/Table Read more
bigqueryreservation.googleapis.com/Assignment Read more
bigqueryreservation.googleapis.com/BiReservation Read more
bigqueryreservation.googleapis.com/CapacityCommitment Read more
bigqueryreservation.googleapis.com/Location Read more
bigqueryreservation.googleapis.com/Reservation Read more
cloud.googleapis.com/Location1 Read more
cloudkms.googleapis.com/CryptoKey Read more
cloudkms.googleapis.com/CryptoKeyVersion Read more
cloudkms.googleapis.com/KeyRing Read more
cloudresourcemanager.googleapis.com/Project Read more
compute.googleapis.com/BackendService Read more
compute.googleapis.com/Disk Read more
compute.googleapis.com/Firewall Read more
compute.googleapis.com/ForwardingRule Read more
compute.googleapis.com/GlobalForwardingRule Read more
compute.googleapis.com/Image Read more
compute.googleapis.com/Instance Read more
compute.googleapis.com/InstanceTemplate Read more
compute.googleapis.com/Snapshot Read more
compute.googleapis.com/TargetHttpProxy Read more
compute.googleapis.com/TargetHttpsProxy Read more
compute.googleapis.com/TargetSslProxy Read more
compute.googleapis.com/TargetTcpProxy Read more
container.googleapis.com/Clusters Read more
logging.googleapis.com/LogBucket Read more
logging.googleapis.com/LogView Read more
sqladmin.googleapis.com/BackupRun Read more
sqladmin.googleapis.com/Instance Read more
storage.googleapis.com/Bucket Read more
storage.googleapis.com/ManagedFolder Read more
storage.googleapis.com/Object Read more

1 Cloud Key Management Service uses this resource type as the parent of key ring resources.

Resource name format

The following table lists the format of each type of resource name attribute.

Resource reference Resource name format template
BigQuery datasets projects/project-id/datasets/dataset-id
BigQuery models projects/project-id/datasets/dataset-id/models/model-id
BigQuery routines projects/project-id/datasets/dataset-id/routines/routine-id
BigQuery tables projects/project-id/datasets/dataset-id/tables/table-id
BigQuery Reservation API assignments projects/project-id/locations/location-id/reservations/reservation-id/assignments/assignment-id
BigQuery Reservation API BI reservations projects/project-id/locations/location-id/biReservation
BigQuery Reservation API capacity commitments projects/project-id/locations/location-id/capacityCommitments/capacity-commitment-id
BigQuery Reservation API locations projects/project-id/locations/location-id
BigQuery Reservation API reservations projects/project-id/locations/location-id/reservations/reservation-id
Cloud Key Management Service crypto keys projects/project-id/locations/location-id/keyRings/keyring-id/cryptoKeys/cryptokey-id
Cloud Key Management Service crypto key versions projects/project-id/locations/location-id/keyRings/keyring-id/cryptoKeys/cryptokey-id/cryptoKeyVersions/cryptokeyversion-id
Cloud Key Management Service key rings projects/project-id/locations/location-id/keyRings/keyring-id
Cloud Logging log buckets projects/project-id/locations/location-id/buckets/bucket-id
Cloud Logging log views projects/project-id/locations/location-id/buckets/bucket-id/views/view-id
Cloud SQL backup runs projects/project-id/instances/instance-id/backupRuns/backup-id
Cloud SQL instances projects/project-id/instances/instance-id
Cloud Storage buckets1 projects/_/buckets/bucket-name
Cloud Storage managed folders1, 2 projects/_/buckets/bucket-name/managedFolders/managed-folder-name
Cloud Storage objects1, 3 projects/_/buckets/bucket-name/objects/object-name
Compute Engine global backend services projects/project-id/global/backendServices/backend-service-id
Compute Engine regional backend services projects/project-id/regions/region-id/backendServices/backend-service-id
Compute Engine firewalls projects/project-id/global/firewalls/firewall-id
Compute Engine global forwarding rules projects/project-id/global/forwardingRules/forwarding-rule-id
Compute Engine regional forwarding rules projects/project-id/regions/region-id/forwardingRules/forwarding-rule-id
Compute Engine images projects/project-id/global/images/image-id
Compute Engine instance templates projects/project-id/global/instanceTemplates/instance-template-id
Compute Engine instances projects/project-id/zones/zone-id/instances/instance-id
Compute Engine regional persistent disks projects/project-id/regions/region-id/disks/disk-id
Compute Engine zonal persistent disks projects/project-id/zones/zone-id/disks/disk-id
Compute Engine snapshots projects/project-id/global/snapshots/snapshot-id
Compute Engine global target HTTP proxies projects/project-id/global/targetHttpProxies/target-http-proxy-id
Compute Engine regional target HTTP proxies projects/project-id/regions/region-id/targetHttpProxies/target-http-proxy-id
Compute Engine global target HTTPS proxies projects/project-id/global/targetHttpsProxies/target-https-proxy-id
Compute Engine regional target HTTPS proxies projects/project-id/regions/region-id/targetHttpsProxies/target-https-proxy-id
Compute Engine target SSL proxies projects/project-id/global/targetSslProxies/target-ssl-proxy-id
Compute Engine target TCP proxies projects/project-id/global/targetTcpProxies/target-tcp-proxy-id
Google Kubernetes Engine zonal clusters projects/project-id/zones/zone/clusters/cluster-id
Google Kubernetes Engine regional clusters projects/project-id/locations/location/clusters/cluster-id
Resource Manager organizations organizations/organization-name

1 For Cloud Storage, resource names contain an underscore (_) rather than a project ID. You cannot replace the underscore with a project ID, project name, or project number.

2 Use the entire managed folder name, including forward slashes. In Cloud Storage, these characters are part of the managed folder name, not path separators.

3 Use the entire object name, including forward slashes. In Cloud Storage, these characters are part of the object name, not path separators.

Resource tags

You can attach tags to organizations, projects, and folders. Any Trusted Cloud by S3NS resource can inherit tags from these higher-level resources.

You can use a few different types of identifiers to refer to tag keys and values:

  • A permanent ID, which is globally unique and can never be reused. For example, a tag key could have the permanent ID tagKeys/123456789012, and a tag value could have the permanent ID tagValues/567890123456.
  • A short name. The short name for each key must be unique within the project or organization under which the key is defined, and the short name for each value must be unique for its associated key. For example, a tag key could have the short name env, and a tag value could have the short name prod.
  • A namespaced name, which adds your organization's numeric ID or project's ID to the short name of a tag key. For example, a tag key created for an organization could have the namespaced name 123456789012/env. To learn how to get your organization ID, see Getting your organization resource ID. A tag key created for a project could have the namespaced name myproject/env. To learn how to get your project ID, see Identifying projects.

The specific identifiers depend on the tag keys and values that you have created for your organization. To learn how to list the tag keys and values that are available to you, see Listing tag keys and Listing tag values.