Binding

Associa members, ou principais, a um role.

Representação JSON
{
  "role": string,
  "members": [
    string
  ],
  "condition": {
    object (Expr)
  }
}
Campos
role

string

Papel atribuído à lista de members ou principais. Por exemplo, roles/viewer, roles/editor ou roles/owner.

members[]

string

Especifica as identidades que solicitam acesso a um recurso do Google Cloud. members pode ter os seguintes valores:

  • allUsers: um identificador especial que representa qualquer pessoa na Internet, com ou sem uma conta do Google.

  • allAuthenticatedUsers: um identificador especial que representa qualquer pessoa autenticada com uma Conta do Google ou uma conta de serviço. Não inclui identidades de provedores de identidade externos (IdPs) pela federação de identidade.

  • user:{emailid}: um endereço de e-mail que representa uma Conta do Google específica. Por exemplo, alice@example.com.

  • serviceAccount:{emailid}: um endereço de e-mail que representa uma conta de serviço do Google. Por exemplo, my-other-app@appspot.gserviceaccount.com.

  • serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]: identificador de uma conta de serviço do Kubernetes. Por exemplo, my-project.svc.id.goog[my-namespace/my-kubernetes-sa].

  • group:{emailid}: um endereço de e-mail que representa um grupo do Google. Por exemplo, admins@example.com.

  • domain:{domain}: domínio do G Suite (principal) que representa todos os usuários dele. Por exemplo, google.com ou example.com.
  • principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}: uma identidade única em um pool de identidades de força de trabalho.

  • principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/group/{groupId}: todas as identidades de força de trabalho em um grupo.

  • principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/attribute.{attribute_name}/{attribute_value}: todas as identidades com um valor de atributo específico.

  • principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/*: todas as identidades em um pool de Identidades de força de trabalho.

  • principal://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/subject/{subject_attribute_value}: identidade única em um pool de identidades de carga de trabalho.

  • principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/group/{groupId}: um grupo de pools de identidades de cargas de trabalho.

  • principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{attribute_value}: todas as identidades em um pool de Identidades de carga de trabalho com um determinado atributo.

  • principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/*: todas as identidades em um pool de Identidades de carga de trabalho.

  • deleted:user:{emailid}?uid={uniqueid}: um endereço de e-mail (mais identificador exclusivo) que representa um usuário que foi excluído recentemente. Por exemplo, alice@example.com?uid=123456789012345678901. Se o usuário for recuperado, esse valor será revertido para user:{emailid} e o usuário recuperado manterá o papel na vinculação.

  • deleted:serviceAccount:{emailid}?uid={uniqueid}: um endereço de e-mail (além do identificador exclusivo) que representa uma conta de serviço que foi excluída recentemente. Por exemplo, my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901. Se a exclusão da conta de serviço for revertida, esse valor será revertido para serviceAccount:{emailid}, e a conta de serviço não excluída manterá o papel na vinculação.

  • deleted:group:{emailid}?uid={uniqueid}: um endereço de e-mail, mais um identificador exclusivo, que representa um grupo do Google que foi excluído recentemente. Por exemplo, admins@example.com?uid=123456789012345678901. Se o grupo for recuperado, esse valor será revertido para group:{emailid} e o grupo recuperado manterá o papel na vinculação.

  • deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}: identidade excluída em um pool de identidades de força de trabalho Por exemplo, deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value.

condition

object (Expr)

A condição que está associada a essa vinculação.

Se a condição for avaliada como true, essa vinculação se aplicará à solicitação atual.

Se a condição for avaliada como false, essa vinculação não se aplicará à solicitação atual. No entanto, uma vinculação de papel diferente pode conceder o mesmo papel a um ou mais principais da vinculação.

Para saber quais recursos são compatíveis com as condições nas políticas do IAM, consulte a documentação do IAM.

Expr

Representa uma expressão textual na sintaxe Common Expression Language (CEL). A CEL é uma linguagem de expressão semelhante a C. A sintaxe e a semântica do CEL estão documentadas em https://github.com/google/cel-spec.

Exemplo (comparação):

title: "Summary size limit"
description: "Determines if a summary is less than 100 chars"
expression: "document.summary.size() < 100"

Exemplo (igualdade):

title: "Requestor is owner"
description: "Determines if requestor is the document owner"
expression: "document.owner == request.auth.claims.email"

Exemplo (lógica):

title: "Public documents"
description: "Determine whether the document should be publicly visible"
expression: "document.type != 'private' && document.type != 'internal'"

Exemplo (manipulação de dados):

title: "Notification string"
description: "Create a notification string with a timestamp."
expression: "'New message received at ' + string(document.create_time)"

As variáveis e funções exatas que podem ser referenciadas em uma expressão são determinadas pelo serviço que a avalia. Consulte a documentação do serviço para mais informações.

Representação JSON
{
  "expression": string,
  "title": string,
  "description": string,
  "location": string
}
Campos
expression

string

Representação textual de uma expressão na sintaxe Common Expression Language.

title

string

Opcional. Título da expressão, ou seja, uma string curta que descreve sua finalidade. Isso pode ser usado, por exemplo, em IUs que permitam inserir a expressão.

description

string

Opcional. Descrição da expressão. Este é um texto mais longo que descreve a expressão, por exemplo, quando o cursor é passado sobre ela em uma IU.

location

string

Opcional. String que indica o local da expressão para o relatório de erros, por exemplo, um nome de arquivo e uma posição no arquivo.