IamPolicyAnalysisQuery

IAM policy analysis query message.

JSON representation
{
  "parent": string,
  "resourceSelector": {
    object (ResourceSelector)
  },
  "identitySelector": {
    object (IdentitySelector)
  },
  "accessSelector": {
    object (AccessSelector)
  }
}
Fields
parent

string

Required. The relative name of the root asset. Only resources and IAM policies within the parent will be analyzed.

This can only be an organization number (such as "organizations/123"), a folder number (such as "folders/123"), a project ID (such as "projects/my-project-id"), or a project number (such as "projects/12345").

To know how to get organization id, visit here .

To know how to get folder or project id, visit here .

resourceSelector

object (ResourceSelector)

Optional. Specifies a resource for analysis.

identitySelector

object (IdentitySelector)

Optional. Specifies an identity for analysis.

accessSelector

object (AccessSelector)

Optional. Specifies roles or permissions for analysis. This is optional.

ResourceSelector

Specifies the resource to analyze for access policies, which may be set directly on the resource, or on ancestors such as organizations, folders or projects.

JSON representation
{
  "fullResourceName": string
}
Fields
fullResourceName

string

Required. The full resource name of a resource of supported resource types.

IdentitySelector

Specifies an identity for which to determine resource access, based on roles assigned either directly to them or to the groups they belong to, directly or indirectly.

JSON representation
{
  "identity": string
}
Fields
identity

string

Required. The identity appear in the form of members in IAM policy binding.

The examples of supported forms are: "user:mike@example.com", "group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@appspot.gserviceaccount.com".

Notice that wildcard characters (such as * and ?) are not supported. You must give a specific identity.

AccessSelector

Specifies roles and/or permissions to analyze, to determine both the identities possessing them and the resources they control. If multiple values are specified, results will include identities and resources matching any of them. The total number of roles and permissions should be equal or less than 10.

JSON representation
{
  "roles": [
    string
  ],
  "permissions": [
    string
  ]
}
Fields
roles[]

string

Optional. The roles to appear in result.

permissions[]

string

Optional. The permissions to appear in result.