package google.iam.v1

Mouse Melon logoGet desktop application:
View/edit binary Protocol Buffers messages

service IAMPolicy

iam_policy.proto:60

## API Overview Manages Identity and Access Management (IAM) policies. Any implementation of an API that offers access control features implements the google.iam.v1.IAMPolicy interface. ## Data model Access control is applied when a principal (user or service account), takes some action on a resource exposed by a service. Resources, identified by URI-like names, are the unit of access control specification. Service implementations can choose the granularity of access control and the supported permissions for their resources. For example one database service may allow access control to be specified only at the Table level, whereas another might allow access control to also be specified at the Column level. ## Policy Structure See google.iam.v1.Policy This is intentionally not a CRUD style API because access control policies are created and deleted implicitly with the resources to which they are attached.

message AuditConfigDelta

policy.proto:207

One delta entry for AuditConfig. Each individual change (only one exempted_member in each entry) to a AuditConfig will be a separate entry.

Used in: PolicyDelta

enum AuditConfigDelta.Action

policy.proto:209

The type of action performed on an audit configuration in a policy.

Used in: AuditConfigDelta

message Binding

policy.proto:125

Associates `members` with a `role`.

Used in: Policy

message BindingDelta

policy.proto:174

One delta entry for Binding. Each individual change (only one member in each entry) to a binding will be a separate entry.

Used in: PolicyDelta

enum BindingDelta.Action

policy.proto:176

The type of action performed on a Binding in a policy.

Used in: BindingDelta

message GetIamPolicyRequest

iam_policy.proto:113

Request message for `GetIamPolicy` method.

Used as request type in: bigtable.admin.v2.BigtableInstanceAdmin.GetIamPolicy, bigtable.admin.v2.BigtableTableAdmin.GetIamPolicy, cloud.bigquery.connection.v1beta1.ConnectionService.GetIamPolicy, cloud.datacatalog.v1beta1.DataCatalog.GetIamPolicy, cloud.iot.v1.DeviceManager.GetIamPolicy, cloud.resourcemanager.v2.Folders.GetIamPolicy, cloud.securitycenter.v1.SecurityCenter.GetIamPolicy, cloud.securitycenter.v1beta1.SecurityCenter.GetIamPolicy, cloud.tasks.v2.CloudTasks.GetIamPolicy, cloud.tasks.v2beta2.CloudTasks.GetIamPolicy, cloud.tasks.v2beta3.CloudTasks.GetIamPolicy, devtools.containeranalysis.v1.ContainerAnalysis.GetIamPolicy, devtools.containeranalysis.v1alpha1.ContainerAnalysis.GetIamPolicy, devtools.containeranalysis.v1beta1.ContainerAnalysisV1Beta1.GetIamPolicy, devtools.sourcerepo.v1.SourceRepo.GetIamPolicy, genomics.v1.DatasetServiceV1.GetIamPolicy, admin.v1.IAM.GetIamPolicy, IAMPolicy.GetIamPolicy, spanner.admin.database.v1.DatabaseAdmin.GetIamPolicy, spanner.admin.instance.v1.InstanceAdmin.GetIamPolicy

message GetPolicyOptions

options.proto:31

Encapsulates settings provided to GetIamPolicy.

Used in: GetIamPolicyRequest

message Policy

policy.proto:88

Defines an Identity and Access Management (IAM) policy. It is used to specify access control policies for Cloud Platform resources. A `Policy` is a collection of `bindings`. A `binding` binds one or more `members` to a single `role`. Members can be user accounts, service accounts, Google groups, and domains (such as G Suite). A `role` is a named list of permissions (defined by IAM or configured by users). A `binding` can optionally specify a `condition`, which is a logic expression that further constrains the role binding based on attributes about the request and/or target resource. **JSON Example** { "bindings": [ { "role": "roles/resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] }, { "role": "roles/resourcemanager.organizationViewer", "members": ["user:eve@example.com"], "condition": { "title": "expirable access", "description": "Does not grant access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", } } ] } **YAML Example** bindings: - members: - user:mike@example.com - group:admins@example.com - domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.com role: roles/resourcemanager.organizationViewer condition: title: expirable access description: Does not grant access after Sep 2020 expression: request.time < timestamp('2020-10-01T00:00:00.000Z') For a description of IAM and its features, see the [IAM developer's guide](https://cloud.google.com/iam/docs).

Used as response type in: bigtable.admin.v2.BigtableInstanceAdmin.GetIamPolicy, bigtable.admin.v2.BigtableInstanceAdmin.SetIamPolicy, bigtable.admin.v2.BigtableTableAdmin.GetIamPolicy, bigtable.admin.v2.BigtableTableAdmin.SetIamPolicy, cloud.bigquery.connection.v1beta1.ConnectionService.GetIamPolicy, cloud.bigquery.connection.v1beta1.ConnectionService.SetIamPolicy, cloud.datacatalog.v1beta1.DataCatalog.GetIamPolicy, cloud.datacatalog.v1beta1.DataCatalog.SetIamPolicy, cloud.iot.v1.DeviceManager.GetIamPolicy, cloud.iot.v1.DeviceManager.SetIamPolicy, cloud.resourcemanager.v2.Folders.GetIamPolicy, cloud.resourcemanager.v2.Folders.SetIamPolicy, cloud.securitycenter.v1.SecurityCenter.GetIamPolicy, cloud.securitycenter.v1.SecurityCenter.SetIamPolicy, cloud.securitycenter.v1beta1.SecurityCenter.GetIamPolicy, cloud.securitycenter.v1beta1.SecurityCenter.SetIamPolicy, cloud.tasks.v2.CloudTasks.GetIamPolicy, cloud.tasks.v2.CloudTasks.SetIamPolicy, cloud.tasks.v2beta2.CloudTasks.GetIamPolicy, cloud.tasks.v2beta2.CloudTasks.SetIamPolicy, cloud.tasks.v2beta3.CloudTasks.GetIamPolicy, cloud.tasks.v2beta3.CloudTasks.SetIamPolicy, devtools.containeranalysis.v1.ContainerAnalysis.GetIamPolicy, devtools.containeranalysis.v1.ContainerAnalysis.SetIamPolicy, devtools.containeranalysis.v1alpha1.ContainerAnalysis.GetIamPolicy, devtools.containeranalysis.v1alpha1.ContainerAnalysis.SetIamPolicy, devtools.containeranalysis.v1beta1.ContainerAnalysisV1Beta1.GetIamPolicy, devtools.containeranalysis.v1beta1.ContainerAnalysisV1Beta1.SetIamPolicy, devtools.sourcerepo.v1.SourceRepo.GetIamPolicy, devtools.sourcerepo.v1.SourceRepo.SetIamPolicy, genomics.v1.DatasetServiceV1.GetIamPolicy, genomics.v1.DatasetServiceV1.SetIamPolicy, admin.v1.IAM.GetIamPolicy, admin.v1.IAM.SetIamPolicy, IAMPolicy.GetIamPolicy, IAMPolicy.SetIamPolicy, spanner.admin.database.v1.DatabaseAdmin.GetIamPolicy, spanner.admin.database.v1.DatabaseAdmin.SetIamPolicy, spanner.admin.instance.v1.InstanceAdmin.GetIamPolicy, spanner.admin.instance.v1.InstanceAdmin.SetIamPolicy

Used as field type in: cloud.asset.v1.Asset, cloud.asset.v1beta1.Asset, cloud.asset.v1p2beta1.Asset, SetIamPolicyRequest

message PolicyDelta

policy.proto:164

The difference delta between two policies.

Used in: logging.AuditData

message SetIamPolicyRequest

iam_policy.proto:98

Request message for `SetIamPolicy` method.

Used as request type in: bigtable.admin.v2.BigtableInstanceAdmin.SetIamPolicy, bigtable.admin.v2.BigtableTableAdmin.SetIamPolicy, cloud.bigquery.connection.v1beta1.ConnectionService.SetIamPolicy, cloud.datacatalog.v1beta1.DataCatalog.SetIamPolicy, cloud.iot.v1.DeviceManager.SetIamPolicy, cloud.resourcemanager.v2.Folders.SetIamPolicy, cloud.securitycenter.v1.SecurityCenter.SetIamPolicy, cloud.securitycenter.v1beta1.SecurityCenter.SetIamPolicy, cloud.tasks.v2.CloudTasks.SetIamPolicy, cloud.tasks.v2beta2.CloudTasks.SetIamPolicy, cloud.tasks.v2beta3.CloudTasks.SetIamPolicy, devtools.containeranalysis.v1.ContainerAnalysis.SetIamPolicy, devtools.containeranalysis.v1alpha1.ContainerAnalysis.SetIamPolicy, devtools.containeranalysis.v1beta1.ContainerAnalysisV1Beta1.SetIamPolicy, devtools.sourcerepo.v1.SourceRepo.SetIamPolicy, genomics.v1.DatasetServiceV1.SetIamPolicy, admin.v1.IAM.SetIamPolicy, IAMPolicy.SetIamPolicy, spanner.admin.database.v1.DatabaseAdmin.SetIamPolicy, spanner.admin.instance.v1.InstanceAdmin.SetIamPolicy

message TestIamPermissionsRequest

iam_policy.proto:126

Request message for `TestIamPermissions` method.

Used as request type in: bigtable.admin.v2.BigtableInstanceAdmin.TestIamPermissions, bigtable.admin.v2.BigtableTableAdmin.TestIamPermissions, cloud.bigquery.connection.v1beta1.ConnectionService.TestIamPermissions, cloud.datacatalog.v1beta1.DataCatalog.TestIamPermissions, cloud.iot.v1.DeviceManager.TestIamPermissions, cloud.resourcemanager.v2.Folders.TestIamPermissions, cloud.securitycenter.v1.SecurityCenter.TestIamPermissions, cloud.securitycenter.v1beta1.SecurityCenter.TestIamPermissions, cloud.tasks.v2.CloudTasks.TestIamPermissions, cloud.tasks.v2beta2.CloudTasks.TestIamPermissions, cloud.tasks.v2beta3.CloudTasks.TestIamPermissions, devtools.containeranalysis.v1.ContainerAnalysis.TestIamPermissions, devtools.containeranalysis.v1alpha1.ContainerAnalysis.TestIamPermissions, devtools.containeranalysis.v1beta1.ContainerAnalysisV1Beta1.TestIamPermissions, devtools.sourcerepo.v1.SourceRepo.TestIamPermissions, genomics.v1.DatasetServiceV1.TestIamPermissions, admin.v1.IAM.TestIamPermissions, IAMPolicy.TestIamPermissions, spanner.admin.database.v1.DatabaseAdmin.TestIamPermissions, spanner.admin.instance.v1.InstanceAdmin.TestIamPermissions

message TestIamPermissionsResponse

iam_policy.proto:141

Response message for `TestIamPermissions` method.

Used as response type in: bigtable.admin.v2.BigtableInstanceAdmin.TestIamPermissions, bigtable.admin.v2.BigtableTableAdmin.TestIamPermissions, cloud.bigquery.connection.v1beta1.ConnectionService.TestIamPermissions, cloud.datacatalog.v1beta1.DataCatalog.TestIamPermissions, cloud.iot.v1.DeviceManager.TestIamPermissions, cloud.resourcemanager.v2.Folders.TestIamPermissions, cloud.securitycenter.v1.SecurityCenter.TestIamPermissions, cloud.securitycenter.v1beta1.SecurityCenter.TestIamPermissions, cloud.tasks.v2.CloudTasks.TestIamPermissions, cloud.tasks.v2beta2.CloudTasks.TestIamPermissions, cloud.tasks.v2beta3.CloudTasks.TestIamPermissions, devtools.containeranalysis.v1.ContainerAnalysis.TestIamPermissions, devtools.containeranalysis.v1alpha1.ContainerAnalysis.TestIamPermissions, devtools.containeranalysis.v1beta1.ContainerAnalysisV1Beta1.TestIamPermissions, devtools.sourcerepo.v1.SourceRepo.TestIamPermissions, genomics.v1.DatasetServiceV1.TestIamPermissions, admin.v1.IAM.TestIamPermissions, IAMPolicy.TestIamPermissions, spanner.admin.database.v1.DatabaseAdmin.TestIamPermissions, spanner.admin.instance.v1.InstanceAdmin.TestIamPermissions