Índice
IAMPolicy(interface)Binding(mensagem)GetIamPolicyRequest(mensagem)GetPolicyOptions(mensagem)Policy(mensagem)SetIamPolicyRequest(mensagem)TestIamPermissionsRequest(mensagem)TestIamPermissionsResponse(mensagem)
IAMPolicy
Visão geral da API
Gerencia as políticas de gerenciamento de identidade e acesso (IAM, na sigla em inglês).
Qualquer implementação de uma API que ofereça recursos de controle de acesso implementa a interface google.iam.v1.IAMPolicy.
Modelo de dados
O controle de acesso é aplicado quando um principal (usuário ou conta de serviço) executa alguma ação em um recurso exposto por um serviço. Os recursos, identificados por nomes semelhantes a URI, são a unidade de especificação de controle de acesso. As implementações de serviço podem escolher a granularidade do controle de acesso e as permissões aceitas nos recursos. Por exemplo, um serviço de banco de dados pode permitir que o controle de acesso seja especificado somente no nível da Tabela, já outro pode permitir que o controle de acesso também seja especificado no nível da Coluna.
Estrutura da política
Consulte google.iam.v1.Policy
Ela não tem a intenção de ser uma API no estilo CRUD porque as políticas de controle de acesso são criadas e excluídas implicitamente com os recursos aos quais são anexadas.
| GetIamPolicy |
|---|
|
Busca a política de controle de acesso a um recurso. Retorna uma política vazia se o recurso estiver presente e não tiver um conjunto de políticas.
|
| SetIamPolicy |
|---|
|
Define a política de controle de acesso no recurso especificado. Substitui qualquer política atual. Pode retornar erros
|
| TestIamPermissions |
|---|
|
Retorna permissões do autor da chamada no recurso especificado. Se o recurso não existir, isso retornará um conjunto vazio de permissões, mas não um erro Observação: essa operação foi projetada para ser usada na criação de IUs e ferramentas de linha de comando e não para verificação de autorização. Essa operação pode "falhar em abrir" sem aviso prévio.
|
Vinculação
Associa members, ou principais, a um role.
| Campos | |
|---|---|
role |
Papel atribuído à lista de Para uma visão geral dos papéis e permissões do IAM, consulte a documentação do IAM. Para uma lista dos papéis predefinidos disponíveis, consulte aqui. |
members[] |
Especifica os principais que solicitam acesso a um recurso do Google Cloud.
|
condition |
A condição que está associada a essa vinculação. Se a condição for avaliada como Se a condição for avaliada como Para saber quais recursos são compatíveis com as condições nas políticas do IAM, consulte a documentação do IAM. |
GetIamPolicyRequest
Solicita uma mensagem ao método GetIamPolicy.
| Campos | |
|---|---|
resource |
OBRIGATÓRIO: o recurso para o qual a política está sendo solicitada. Consulte Nomes de recursos para saber o valor correto para esse campo. |
options |
OPCIONAL: um objeto |
GetPolicyOptions
Encapsula as configurações fornecidas para GetIamPolicy.
| Campos | |
|---|---|
requested_policy_version |
Opcional. A versão máxima da política que será usada para formatar a política. Os valores válidos são: 0, 1 e 3. As solicitações que especificarem um valor inválido serão rejeitadas. As solicitações de políticas com qualquer vinculação condicional precisam especificar a versão 3. As políticas sem vinculações de papéis condicionais podem especificar qualquer valor válido ou deixar o campo sem definição. A política na resposta pode usar a versão especificada ou uma versão anterior. Por exemplo, se você especificar a versão 3, mas a política não tiver vinculações de papéis condicionais, a resposta usará a versão 1. Para saber quais recursos são compatíveis com as condições nas políticas do IAM, consulte a documentação do IAM. |
Policy
Uma política de gerenciamento de identidade e acesso (IAM), que especifica controles de acesso para recursos do Google Cloud.
Uma Policy é uma coleção de bindings. Um binding vincula um ou mais members, ou principais, a um único role. Os principais podem ser contas de usuário, contas de serviço, Grupos do Google e domínios, como o G Suite. Um role é uma lista nomeada de permissões. Cada role pode ser um papel pré-definido do IAM ou um papel personalizado criado pelo usuário.
Para determinados tipos de recursos do Google Cloud, uma binding também pode especificar uma condition, que é uma expressão lógica que permitirá acesso a um recurso somente se a expressão for avaliada como true. Uma condição pode adicionar restrições com base nos atributos da solicitação, do recurso ou de ambos. Para saber quais recursos são compatíveis com as condições nas políticas do IAM, consulte a documentação do IAM.
Exemplo de JSON:
{
"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')",
}
}
],
"etag": "BwWWja0YfJA=",
"version": 3
}
Exemplo de YAML:
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')
etag: BwWWja0YfJA=
version: 3
Para uma descrição do IAM e dos recursos dele, consulte a documentação do IAM.
| Campos | |
|---|---|
version |
Especifica o formato da política. Os valores válidos são Qualquer operação que afete as vinculações condicionais de papel precisa especificar a versão
Importante: se você usar as condições do IAM, precisará incluir o campo Se uma política não incluir nenhuma condição, as operações nessa política poderão especificar qualquer versão válida ou deixar o campo não definido. Para saber quais recursos são compatíveis com as condições nas políticas do IAM, consulte a documentação do IAM. |
bindings[] |
Associa uma lista de O |
etag |
Importante: se você usar as condições do IAM, precisará incluir o campo |
SetIamPolicyRequest
Solicita uma mensagem ao método SetIamPolicy.
| Campos | |
|---|---|
resource |
OBRIGATÓRIO: o recurso específico para a política em questão. Consulte Nomes de recursos para saber o valor correto para esse campo. |
policy |
OBRIGATÓRIO: a política completa a ser aplicada ao |
TestIamPermissionsRequest
Solicita uma mensagem ao método TestIamPermissions.
| Campos | |
|---|---|
resource |
OBRIGATÓRIO: o recurso para o qual o detalhe da política está sendo solicitado. Consulte Nomes de recursos para saber o valor correto desse campo. |
permissions[] |
O conjunto de permissões que serão verificadas para o |
TestIamPermissionsResponse
Mensagem de resposta para o método TestIamPermissions.
| Campos | |
|---|---|
permissions[] |
Um subconjunto de |