Implantações: setIamPolicy

Requer autorização

Define a política de controle de acesso no recurso especificado. Substitui qualquer política existente.

Solicitação

Solicitação HTTP

POST https://www.googleapis.com/deploymentmanager/v2/projects/project/global/deployments/resource/setIamPolicy

Parâmetros

Nome do parâmetro Valor Descrição
Parâmetros de caminho
project string Código de projeto da solicitação.
resource string Nome do recurso da solicitação.

Autorização

Esta solicitação requer autorização com pelo menos um dos seguintes escopos (leia mais sobre autenticação e autorização).

Escopo
https://www.googleapis.com/auth/cloud-platform
https://www.googleapis.com/auth/ndev.cloudman

Corpo da solicitação

No corpo da solicitação, forneça dados com a seguinte estrutura:

{
  "version": integer,
  "bindings": [
    {
      "role": string,
      "members": [
        string
      ]
    }
  ],
  "auditConfigs": [
    {
      "service": string,
      "exemptedMembers": [
        string
      ],
      "auditLogConfigs": [
        {
          "logType": string,
          "exemptedMembers": [
            string
          ]
        }
      ]
    }
  ],
  "rules": [
    {
      "description": string,
      "permissions": [
        string
      ],
      "action": string,
      "ins": [
        string
      ],
      "notIns": [
        string
      ],
      "conditions": [
        {
          "iam": string,
          "sys": string,
          "svc": string,
          "op": string,
          "value": string,
          "values": [
            string
          ]
        }
      ],
      "logConfigs": [
        {
          "counter": {
            "metric": string,
            "field": string
          }
        }
      ]
    }
  ],
  "etag": bytes,
  "iamOwned": boolean
}
Nome da propriedade Valor Descrição Observações
version integer Versão da "política". A versão padrão é 0.

bindings[] list Associa uma lista de "membros" a um "papel". Não podem ser especificadas várias "associações" para o mesmo papel. Associações sem membros geram erros.
bindings[].role string Papel atribuído a "membros". Por exemplo, "papéis/visualizador", "papéis/editor" ou "papéis/proprietário".
bindings[].members[] list Especifica as identidades que solicitam acesso a um recurso do Cloud Platform. Os "membros" podem 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.

* "user:{emailid}": um endereço de e-mail que representa uma conta do Google específica. Por exemplo, "alice@gmail.com" ou "joe@example.com".



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

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

* "domain:{domain}": um nome de domínio do Google Apps que representa todos os usuários desse domínio. Por exemplo, "google.com" ou "example.com".







auditConfigs[] list Especifica configurações de geração de registros de auditoria para "acesso a dados". "Acesso a dados": geralmente se refere à leitura/gravação de dados e leituras do administrador. "Atividade do administrador": geralmente se refere a gravações do administrador.

Observação: "AuditConfig" não se aplica à "atividade do administrador", que sempre ativa a geração de registros de auditoria.
auditConfigs[].service string Especifica um serviço que é ativado para geração de registros de auditoria. Por exemplo, "resourcemanager", "storage", "compute". "allServices" são valores especiais que abrangem todos os serviços.
auditConfigs[].exemptedMembers[] list Especifica as identidades isentas de geração de registros de auditoria de "acesso a dados" para o "serviço" especificado acima. Segue o mesmo formato de Binding.members.
auditConfigs[].auditLogConfigs[] list A configuração de cada tipo de geração de registros.
auditConfigs[].auditLogConfigs[].logType string O tipo de registro permitido por essa configuração.
auditConfigs[].auditLogConfigs[].exemptedMembers[] list Especifica as identidades isentas desse tipo de geração de registros. Segue o mesmo formato de Binding.members.
rules[] list Se mais de uma regra é especificada, elas são aplicadas da seguinte forma: - Todas as regras LOG correspondentes são sempre aplicadas. Se coincide alguma regra DENY/DENY_WITH_LOG, a permissão é negada. A geração de registros é aplicada se uma ou mais regras correspondentes exige registro. Caso contrário, se coincide alguma regra ALLOW/ALLOW_WITH_LOG, é concedida a permissão. A geração de registros é aplicada se uma ou mais regras correspondentes exige registro. Caso contrário, se nenhuma regra se aplica, a permissão é negada.
rules[].description string Descrição legível da regra.
rules[].permissions[] list Uma permissão é uma string de formulário '..'. Por exemplo, "storage.buckets.list". Um valor "*" corresponde a todas as permissões e uma parte do verbo "*", por exemplo, "storage.buckets.*", corresponde a todos os verbos.

rules[].action string Obrigatório
rules[].ins[] list Se uma ou mais cláusulas "in" são especificadas, a regra faz a correspondência se PRINCIPAL/AUTHORITY_SELECTOR está em pelo menos uma dessas entradas.
rules[].notIns[] list Se uma ou mais cláusulas "not_in" são especificadas, PRINCIPAL/AUTHORITY_SELECTOR não está em nenhuma dessas entradas.
rules[].conditions[] list Restrições adicionais que precisam ser atendidas.
rules[].conditions[].iam string Atributos do Trusted fornecidos pelo sistema IAM.
rules[].conditions[].sys string Atributos do Trusted fornecidos por qualquer serviço que tenha recursos e use o sistema IAM para controle de acesso.
rules[].conditions[].svc string Atributos do Trusted descarregados pelo serviço.
rules[].conditions[].op string Um operador com o qual aplicar o assunto.
rules[].conditions[].value string COM USO SUSPENSO. Em vez disso, use "values".
rules[].conditions[].values[] list Os objetos da condição. Ela é mutuamente exclusiva com "value".
rules[].logConfigs[] list A configuração retornou para os autores da chamada de tech.iam.IAM.CheckPolicy de qualquer entrada correspondente à ação do LOG.
rules[].logConfigs[].counter nested object Opções de contador.
rules[].logConfigs[].counter.metric string A métrica a ser atualizada.
rules[].logConfigs[].counter.field string O valor do campo a ser atribuído.
etag bytes A "etag" é usada para controle de simultaneidade otimista como uma forma de ajudar a evitar atualizações simultâneas de uma política por outra. É altamente recomendável que os sistemas usem a "etag" no ciclo de leitura-modificação-gravação para fazer atualizações de políticas, a fim de evitar condições de corrida. Uma "etag" é retornada na resposta a "getIamPolicy", e essa etag é colocada na solicitação de "setIamPolicy" para garantir que a alteração seja aplicada à mesma versão da política.

Se nenhuma "etag" é fornecida na chamada para "setIamPolicy", a política existente é substituída às cegas.
iamOwned boolean

Resposta

Se bem-sucedido, este método retornará um corpo de resposta com a seguinte estrutura:

{
  "version": integer,
  "bindings": [
    {
      "role": string,
      "members": [
        string
      ]
    }
  ],
  "auditConfigs": [
    {
      "service": string,
      "exemptedMembers": [
        string
      ],
      "auditLogConfigs": [
        {
          "logType": string,
          "exemptedMembers": [
            string
          ]
        }
      ]
    }
  ],
  "rules": [
    {
      "description": string,
      "permissions": [
        string
      ],
      "action": string,
      "ins": [
        string
      ],
      "notIns": [
        string
      ],
      "conditions": [
        {
          "iam": string,
          "sys": string,
          "svc": string,
          "op": string,
          "value": string,
          "values": [
            string
          ]
        }
      ],
      "logConfigs": [
        {
          "counter": {
            "metric": string,
            "field": string
          }
        }
      ]
    }
  ],
  "etag": bytes,
  "iamOwned": boolean
}
Nome da propriedade Valor Descrição Observações
version integer Versão da "política". A versão padrão é 0.

bindings[] list Associa uma lista de "membros" a um "papel". Não podem ser especificadas várias "associações" para o mesmo papel. Associações sem membros geram erros.
bindings[].role string Papel atribuído a "membros". Por exemplo, "papéis/visualizador", "papéis/editor" ou "papéis/proprietário".
bindings[].members[] list Especifica as identidades que solicitam acesso a um recurso do Cloud Platform. Os "membros" podem 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.

* "user:{emailid}": um endereço de e-mail que representa uma conta do Google específica. Por exemplo, "alice@gmail.com" ou "joe@example.com".



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

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

* "domain:{domain}": um nome de domínio do Google Apps que representa todos os usuários desse domínio. Por exemplo, "google.com" ou "example.com".







auditConfigs[] list Especifica configurações de geração de registros de auditoria para "acesso a dados". "Acesso a dados": geralmente se refere à leitura/gravação de dados e leituras do administrador. "Atividade do administrador": geralmente se refere a gravações do administrador.

Observação: "AuditConfig" não se aplica à "atividade do administrador", que sempre ativa a geração de registros de auditoria.
auditConfigs[].service string Especifica um serviço que é ativado para geração de registros de auditoria. Por exemplo, "resourcemanager", "storage", "compute". "allServices" são valores especiais que abrangem todos os serviços.
auditConfigs[].exemptedMembers[] list Especifica as identidades isentas de geração de registros de auditoria de "acesso a dados" para o "serviço" especificado acima. Segue o mesmo formato de Binding.members.
auditConfigs[].auditLogConfigs[] list A configuração de cada tipo de geração de registros.
auditConfigs[].auditLogConfigs[].logType string O tipo de registro permitido por essa configuração.
auditConfigs[].auditLogConfigs[].exemptedMembers[] list Especifica as identidades isentas desse tipo de geração de registros. Segue o mesmo formato de Binding.members.
rules[] list Se mais de uma regra é especificada, elas são aplicadas da seguinte forma: - Todas as regras LOG correspondentes são sempre aplicadas. Se coincide alguma regra DENY/DENY_WITH_LOG, a permissão é negada. A geração de registros é aplicada se uma ou mais regras correspondentes exige registro. Caso contrário, se coincide alguma regra ALLOW/ALLOW_WITH_LOG, é concedida a permissão. A geração de registros é aplicada se uma ou mais regras correspondentes exige registro. Caso contrário, se nenhuma regra se aplica, a permissão é negada.
rules[].description string Descrição legível da regra.
rules[].permissions[] list Uma permissão é uma string de formulário '..'. Por exemplo, "storage.buckets.list". Um valor "*" corresponde a todas as permissões e uma parte do verbo "*", por exemplo, "storage.buckets.*", corresponde a todos os verbos.

rules[].action string Obrigatório
rules[].ins[] list Se uma ou mais cláusulas "in" são especificadas, a regra faz a correspondência se PRINCIPAL/AUTHORITY_SELECTOR está em pelo menos uma dessas entradas.
rules[].notIns[] list Se uma ou mais cláusulas "not_in" são especificadas, PRINCIPAL/AUTHORITY_SELECTOR não está em nenhuma dessas entradas.
rules[].conditions[] list Restrições adicionais que precisam ser atendidas.
rules[].conditions[].iam string Atributos do Trusted fornecidos pelo sistema IAM.
rules[].conditions[].sys string Atributos do Trusted fornecidos por qualquer serviço que tenha recursos e use o sistema IAM para controle de acesso.
rules[].conditions[].svc string Atributos do Trusted descarregados pelo serviço.
rules[].conditions[].op string Um operador com o qual aplicar o assunto.
rules[].conditions[].value string COM USO SUSPENSO. Em vez disso, use "values".
rules[].conditions[].values[] list Os objetos da condição. Ela é mutuamente exclusiva com "value".
rules[].logConfigs[] list A configuração retornou para os autores da chamada de tech.iam.IAM.CheckPolicy de qualquer entrada correspondente à ação do LOG.
rules[].logConfigs[].counter nested object Opções de contador.
rules[].logConfigs[].counter.metric string A métrica a ser atualizada.
rules[].logConfigs[].counter.field string O valor do campo a ser atribuído.
etag bytes A "etag" é usada para controle de simultaneidade otimista como uma forma de ajudar a evitar atualizações simultâneas de uma política por outra. É altamente recomendável que os sistemas usem a "etag" no ciclo de leitura-modificação-gravação para fazer atualizações de políticas, a fim de evitar condições de corrida. Uma "etag" é retornada na resposta a "getIamPolicy", e essa etag é colocada na solicitação de "setIamPolicy" para garantir que a alteração seja aplicada à mesma versão da política.

Se nenhuma "etag" é fornecida na chamada para "setIamPolicy", a política existente é substituída às cegas.
iamOwned boolean