Nesta página, descrevemos como conceder, alterar e revogar acesso a projetos, pastas e organizações. Ao conceder acesso a projetos, pastas e organizações, você também concede acesso aos recursos dentro deles.
Para saber como gerenciar o acesso a outros recursos, consulte os seguintes guias:
No Identity and Access Management (IAM), o acesso é concedido por meio de políticas de permissão, também conhecidas como políticas do IAM. Uma política de permissão é anexada a um recurso doTrusted Cloud by S3NS . Cada política de permissão contém uma coleção de vinculações de papéis que associam um ou mais principais, como usuários ou contas de serviço, a um papel do IAM. Essas vinculações de papéis concedem os papéis especificados aos principais no recurso ao qual a política está anexada e em todos os descendentes desse recurso. Para mais informações sobre políticas de permissão, consulte Noções básicas sobre políticas de permissão.
Gerencie o acesso a projetos, pastas e organizações com o consoleTrusted Cloud , a Google Cloud CLI, a API REST ou as bibliotecas de cliente do Resource Manager.
Antes de começar
Enable the Resource Manager API.
Configure a autenticação.
Select the tab for how you plan to use the samples on this page:
Console
When you use the Trusted Cloud console to access Trusted Cloud by S3NS services and APIs, you don't need to set up authentication.
gcloud
Instale a Google Cloud CLI e faça login CLI gcloud com sua identidade federada. Depois de fazer login, inicialize a Google Cloud CLI executando o seguinte comando:
gcloud init
C#
Para usar os exemplos .NET desta página em um ambiente de desenvolvimento local, instale e inicialize a CLI gcloud e configure o Application Default Credentials com suas credenciais de usuário.
Instale a Google Cloud CLI e faça login CLI gcloud com sua identidade federada.
Create local authentication credentials for your user account:
gcloud auth application-default login
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Para mais informações, consulte Configurar o ADC para um ambiente de desenvolvimento local na documentação de autenticação do Trusted Cloud .
Java
Para usar os exemplos Java desta página em um ambiente de desenvolvimento local, instale e inicialize a CLI gcloud e configure o Application Default Credentials com suas credenciais de usuário.
Instale a Google Cloud CLI e faça login CLI gcloud com sua identidade federada.
Create local authentication credentials for your user account:
gcloud auth application-default login
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Para mais informações, consulte Configurar o ADC para um ambiente de desenvolvimento local na documentação de autenticação do Trusted Cloud .
Python
Para usar os exemplos Python desta página em um ambiente de desenvolvimento local, instale e inicialize a CLI gcloud e configure o Application Default Credentials com suas credenciais de usuário.
Instale a Google Cloud CLI e faça login CLI gcloud com sua identidade federada.
Create local authentication credentials for your user account:
gcloud auth application-default login
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Para mais informações, consulte Configurar o ADC para um ambiente de desenvolvimento local na documentação de autenticação do Trusted Cloud .
REST
Para usar as amostras da API REST nesta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para a CLI gcloud.
Instale a Google Cloud CLI e faça login CLI gcloud com sua identidade federada.
Para mais informações, consulte Autenticar para usar REST na documentação de autenticação do Trusted Cloud .
Papéis do IAM obrigatórios
Ao criar um projeto, uma pasta ou uma organização, você recebe automaticamente um papel que permite gerenciar o acesso a esse recurso. Para mais informações, consulte Políticas padrão.
Se você não criou um projeto, pasta ou organização, verifique se tem os papéis necessários para gerenciar o acesso a esse recurso.
Para receber as permissões necessárias para gerenciar o acesso a um projeto, uma pasta ou uma organização, peça ao administrador para conceder a você os seguintes papéis do IAM no recurso em que você quer gerenciar o acesso (projeto, pasta ou organização):
-
Para gerenciar o acesso a um projeto:
Administrador do IAM do projeto (
roles/resourcemanager.projectIamAdmin
) -
Para gerenciar o acesso a uma pasta:
Administrador de pastas (
roles/resourcemanager.folderAdmin
) -
Para gerenciar o acesso a projetos, pastas e organizações:
Administrador da organização (
roles/resourcemanager.organizationAdmin
) -
Para gerenciar o acesso a quase todos os recursos do Trusted Cloud :
Administrador de segurança (
roles/iam.securityAdmin
)
Esses papéis predefinidos têm as permissões necessárias para gerenciar o acesso a um projeto, uma pasta ou uma organização. Para conferir as permissões exatas necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
As permissões a seguir são necessárias para gerenciar o acesso a um projeto, uma pasta ou uma organização:
-
Para gerenciar o acesso aos projetos:
-
resourcemanager.projects.getIamPolicy
-
resourcemanager.projects.setIamPolicy
-
-
Para gerenciar o acesso às pastas:
-
resourcemanager.folders.getIamPolicy
-
resourcemanager.folders.setIamPolicy
-
-
Para gerenciar o acesso a organizações:
-
resourcemanager.organizations.getIamPolicy
-
resourcemanager.organizations.setIamPolicy
-
Essas permissões também podem ser concedidas com papéis personalizados ou outros papéis predefinidos.
Ver acesso atual
Veja quem tem acesso ao projeto, à pasta ou à organização usando o console Trusted Cloud , a CLI gcloud, a API REST ou as bibliotecas de cliente do Resource Manager.
Console
No console Trusted Cloud , acesse a página IAM.
Selecione um projeto, pasta ou organização.
O console Trusted Cloud lista todos os principais que receberam papéis no projeto, na pasta ou na organização. Essa lista inclui principais que herdaram papéis no recurso de recursos pai. Para mais informações sobre a herança de políticas, consulte Herança de política e hierarquia de recursos.
Opcional: para visualizar as concessões de papel para agentes de serviço, marque a caixa de seleção Incluir concessões de papel fornecidas pelo S3NS.
gcloud
-
In the Trusted Cloud console, activate Cloud Shell.
At the bottom of the Trusted Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
-
Para ver quem tem acesso ao projeto, à pasta ou à organização, consiga a política de permissão para o recurso. Para saber como interpretar políticas de permissão, consulte Noções básicas sobre políticas de permissão.
Para conseguir a política de permissão do recurso, execute o comando
get-iam-policy
para o recurso:gcloud RESOURCE_TYPE get-iam-policy RESOURCE_ID --format=FORMAT > PATH
Forneça os valores a seguir:
-
RESOURCE_TYPE
: o tipo de recurso do qual você quer ver o acesso. Use um destes valores:projects
,resource-manager folders
ouorganizations
. -
RESOURCE_ID
: o ID do seu Trusted Cloud projeto, pasta ou organização. Os IDs de projeto são alfanuméricos, comomy-project
. Os IDs de pastas e organizações são numéricos, como123456789012
. -
FORMAT
: o formato desejado para a política. Usejson
ouyaml
. -
PATH
: o caminho para um novo arquivo de saída para a política.
Por exemplo, o comando a seguir recebe a política do projeto
my-project
e a salva no diretório inicial em formato JSON:gcloud projects get-iam-policy my-project --format=json > ~/policy.json
-
API_VERSION
: a versão da API a ser usada. Para projetos e organizações, usev1
. Para pastas, usev2
.RESOURCE_TYPE
: o tipo de recurso com a política que você quer gerenciar. Use o valorprojects
,folders
ouorganizations
.RESOURCE_ID
: o ID do seu projeto, organização ou pasta do Trusted Cloud. Os IDs do projeto são strings alfanuméricas, comomy-project
. Os IDs de pastas e organizações são numéricos, como123456789012
.POLICY_VERSION
: a versão da política a ser retornada. As solicitações precisam especificar a versão mais recente da política, que é a versão 3 da política. Para saber mais detalhes, consulte Como especificar uma versão da política ao receber uma política.
C#
Para autenticar no Resource Manager, configure o Application Default Credentials. Para mais informações, consulte Antes de começar.
Para saber como instalar e usar a biblioteca de cliente do Resource Manager, consulte Bibliotecas de cliente do Resource Manager.
Para ver quem tem acesso ao projeto, à pasta ou à organização, consiga a política de permissão para o recurso. Para saber como interpretar políticas de permissão, consulte Noções básicas sobre políticas de permissão.
O exemplo a seguir mostra como receber a política de permissão de um projeto. Para saber como conseguir a política de permissão de uma pasta ou organização, consulte a documentação da biblioteca de cliente do Resource Manager para sua linguagem de programação.
Java
Para autenticar no Resource Manager, configure o Application Default Credentials. Para mais informações, consulte Antes de começar.
Para saber como instalar e usar a biblioteca de cliente do Resource Manager, consulte Bibliotecas de cliente do Resource Manager.
Para ver quem tem acesso ao projeto, à pasta ou à organização, consiga a política de permissão para o recurso. Para saber como interpretar políticas de permissão, consulte Noções básicas sobre políticas de permissão.
O exemplo a seguir mostra como receber a política de permissão de um projeto. Para saber como conseguir a política de permissão de uma pasta ou organização, consulte a documentação da biblioteca de cliente do Resource Manager para sua linguagem de programação.
Python
Para autenticar no Resource Manager, configure o Application Default Credentials. Para mais informações, consulte Antes de começar.
Para saber como instalar e usar a biblioteca de cliente do Resource Manager, consulte Bibliotecas de cliente do Resource Manager.
Para ver quem tem acesso ao projeto, à pasta ou à organização, consiga a política de permissão para o recurso. Para saber como interpretar políticas de permissão, consulte Noções básicas sobre políticas de permissão.
O exemplo a seguir mostra como receber a política de permissão de um projeto. Para saber como conseguir a política de permissão de uma pasta ou organização, consulte a documentação da biblioteca de cliente do Resource Manager para sua linguagem de programação.
REST
Para ver quem tem acesso ao projeto, à pasta ou à organização, consiga a política de permissão para o recurso. Para saber como interpretar políticas de permissão, consulte Noções básicas sobre políticas de permissão.
O método
getIamPolicy
da API Resource Manager recebe a política de permissão de um projeto, pasta ou organização.Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
Método HTTP e URL:
POST https://cloudresourcemanager.googleapis.com/API_VERSION/RESOURCE_TYPE/RESOURCE_ID:getIamPolicy
Corpo JSON da solicitação:
{ "options": { "requestedPolicyVersion": POLICY_VERSION } }
Para enviar a solicitação, expanda uma destas opções:
A resposta contém a política de permissão do projeto. Exemplo:
{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/owner", "members": [ "principal://iam.googleapis.com/locations/global/workforcePools/my-pool/subject/my-user@example.com" ] } ] }
Conceder ou revogar um único papel do IAM
Use o console Trusted Cloud e a CLI gcloud para conceder ou revogar rapidamente apenas um papel de um único principal, sem editar a política de permissão do recurso diretamente.Os tipos comuns de principais incluem contas de serviço, identidades em pools de identidade do Workforce e identidades em pools de identidade da carga de trabalho. Para ver uma lista de todos os tipos de principais, consulte Tipos de principais.
Em geral, as alterações na política entram em vigor em até dois minutos. No entanto, em alguns casos, pode levar sete minutos ou mais para que as mudanças sejam propagadas pelo sistema.
Se você precisar de ajuda para identificar o papel predefinido mais adequado, consulte Encontrar os papéis predefinidos certos.
Conceder um único papel do IAM
Para conceder um único papel a um principal, faça o seguinte:
Console
No console Trusted Cloud , acesse a página IAM.
Selecione um projeto, pasta ou organização.
Selecione um principal para conceder um papel:
Para conceder um papel a um principal que já tenha outros papéis no recurso, encontre uma linha contendo o principal e clique em
Editar principal nessa linha, e clique em Adicionar outro papel.Para conceder um papel a um agente de serviço, marque a caixa de seleção Incluir concessões de papel fornecidas peloS3NS para ver o endereço de e-mail dele.
Para conceder um papel a um principal que ainda não tem papéis no recurso, clique em identificador principal, por exemplo,
Conceder acesso e insira um//iam.googleapis.com/locations/global/workforcePools/my-pool/subject/my-user@example.com
ou//iam.googleapis.com/locations/global/workforcePools/example-pool/group/example-group@example.com
.
Na lista suspensa, selecione um papel a ser concedido. Como prática recomendada de segurança, escolha um papel que inclua apenas as permissões necessárias ao principal.
Opcional: adicione uma condição ao papel.
Clique em Salvar. O principal recebe o papel no recurso.
Para conceder um papel a um principal a mais de um projeto, pasta ou organização, faça o seguinte:
No console Trusted Cloud , acesse a página Gerenciar recursos.
Selecione todos os projetos aos quais você quer conceder permissões.
Se o painel de informações não estiver visível, clique em Mostrar painel de informações. Em seguida, clique em Permissões.
Selecione um principal para conceder um papel:
- Para conceder um papel a um principal que já tenha outros papéis, encontre uma linha contendo o principal e clique em Editar principal nessa linha, e clique em Adicionar outro papel.
- Para conceder um papel a um principal que ainda não tem outros papéis,
clique em identificador
de principal, por exemplo,
//iam.googleapis.com/locations/global/workforcePools/my-pool/subject/my-user@example.com
ou//iam.googleapis.com/locations/global/workforcePools/example-pool/group/example-group@example.com
.
Adicionar principal
e insira um
Na lista suspensa, selecione um papel a ser concedido.
Opcional: adicione uma condição ao papel.
Clique em Salvar. O principal recebe o papel selecionado em cada um dos recursos selecionados.
gcloud
-
In the Trusted Cloud console, activate Cloud Shell.
At the bottom of the Trusted Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
-
O comando
add-iam-policy-binding
permite que você conceda rapidamente um papel a um principal.Antes de usar os dados do comando abaixo, faça estas substituições:
-
RESOURCE_TYPE
: o tipo de recurso ao qual você quer gerenciar o acesso. Useprojects
,resource-manager folders
ouorganizations
. -
RESOURCE_ID
: o ID do seu Trusted Cloud projeto, pasta ou organização. Os IDs de projeto são alfanuméricos, comomy-project
. Os IDs de pastas e organizações são numéricos, como123456789012
. -
PRINCIPAL
: um identificador do principal ou membro, que geralmente tem o seguinte formato:PRINCIPAL_TYPE:ID
. Por exemplo,principal://iam.googleapis.com/locations/global/workforcePools/my-pool/subject/my-user@example.com
ouprincipalSet://iam.googleapis.com/locations/global/workforcePools/example-pool/group/example-group@example.com
. Para conferir uma lista completa dos valores quePRINCIPAL
pode ter, consulte Identificadores de principais. -
ROLE_NAME
: o nome do papel que você quer revogar. Use um dos seguintes formatos:- Papéis predefinidos:
roles/SERVICE.IDENTIFIER
- Papéis personalizados para envolvidos no projeto:
projects/PROJECT_ID/roles/IDENTIFIER
- Papéis personalizados no nível da organização:
organizations/ORG_ID/roles/IDENTIFIER
Para uma lista de papéis predefinidos, consulte Noções básicas sobre papéis.
- Papéis predefinidos:
-
CONDITION
: a condição a ser adicionada à vinculação de papel. Se você não quiser adicionar uma condição, use o valorNone
. Para mais informações sobre as condições, consulte a visão geral das condições.
Execute o seguinte comando:
Linux, macOS ou Cloud Shell
gcloud RESOURCE_TYPE add-iam-policy-binding RESOURCE_ID \ --member=PRINCIPAL --role=ROLE_NAME \ --condition=CONDITION
Windows (PowerShell)
gcloud RESOURCE_TYPE add-iam-policy-binding RESOURCE_ID ` --member=PRINCIPAL --role=ROLE_NAME ` --condition=CONDITION
Windows (cmd.exe)
gcloud RESOURCE_TYPE add-iam-policy-binding RESOURCE_ID ^ --member=PRINCIPAL --role=ROLE_NAME ^ --condition=CONDITION
A resposta contém a política do IAM atualizada.
-
Revogar um único papel do IAM
Para revogar um único papel de um principal, faça o seguinte:
Console
No console Trusted Cloud , acesse a página IAM.
Selecione um projeto, pasta ou organização.
Encontre a linha que contém o principal cujo acesso você quer revogar. Em seguida, clique em
Editar principal nessa linha.Clique no botão Excluir
do papel que você quer revogar e clique em Salvar.
gcloud
-
In the Trusted Cloud console, activate Cloud Shell.
At the bottom of the Trusted Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
-
Para revogar um papel de um usuário rapidamente, execute o comando
remove-iam-policy-binding
:gcloud RESOURCE_TYPE remove-iam-policy-binding RESOURCE_ID
--member=PRINCIPAL --role=ROLE_NAMEForneça os valores a seguir:
-
RESOURCE_TYPE
: o tipo de recurso ao qual você quer gerenciar o acesso. Useprojects
,resource-manager folders
ouorganizations
. -
RESOURCE_ID
: o ID do seu Trusted Cloud projeto, pasta ou organização. Os IDs de projeto são alfanuméricos, comomy-project
. Os IDs de pastas e organizações são numéricos, como123456789012
. -
PRINCIPAL
: um identificador do principal ou membro, que geralmente tem o seguinte formato:PRINCIPAL_TYPE:ID
. Por exemplo,principal://iam.googleapis.com/locations/global/workforcePools/my-pool/subject/my-user@example.com
ouprincipalSet://iam.googleapis.com/locations/global/workforcePools/example-pool/group/example-group@example.com
. -
ROLE_NAME
: o nome do papel que você quer revogar. Use um dos seguintes formatos:- Papéis predefinidos:
roles/SERVICE.IDENTIFIER
- Papéis personalizados para envolvidos no projeto:
projects/PROJECT_ID/roles/IDENTIFIER
- Papéis personalizados no nível da organização:
organizations/ORG_ID/roles/IDENTIFIER
Para uma lista de papéis predefinidos, consulte Noções básicas sobre papéis.
- Papéis predefinidos:
Por exemplo, para revogar o papel Criador de projetos da conta de serviço
example-service-account@example-project.s3ns-system.iam.gserviceaccount.com
para o projetoexample-project
:gcloud projects remove-iam-policy-binding example-project
--member=serviceAccount:example-service-account@example-project.s3ns-system.iam.gserviceaccount.com
--role=roles/resourcemanager.projectCreator -
Para ajudar a garantir que os papéis necessários não sejam revogados, ative as recomendações de risco de alteração. As recomendações de risco de alteração geram avisos quando você tenta revogar papéis no nível do projeto que oTrusted Cloud identificou como importantes.
Conceder ou revogar vários papéis do IAM usando o console Trusted Cloud
É possível usar o console Trusted Cloud para conceder e revogar vários papéis para um único principal:
No console Trusted Cloud , acesse a página IAM.
Selecione um projeto, pasta ou organização.
Selecione o principal com os papéis que você quer modificar:
Para modificar papéis para um principal que já tem papéis no recurso, encontre a linha que contém o principal, clique em
Editar principal nessa linha e clique em Adicionar outro papel.Para modificar os papéis de um agente de serviço, marque a caixa de seleção Incluir concessões de papel fornecidas pelo S3NS para conferir o endereço de e-mail dele.
Para conceder papéis a um principal que ainda não tem papéis no recurso, clique em identificador do principal, por exemplo,
Conceder acesso e insira um//iam.googleapis.com/locations/global/workforcePools/my-pool/subject/my-user@example.com
ou//iam.googleapis.com/locations/global/workforcePools/example-pool/group/example-group@example.com
.
Modifique os papéis do principal:
- Para conceder um papel a um principal que ainda não tem papéis no recurso, clique em Selecionar um papel e selecione um papel na lista suspensa.
- Para conceder outro papel ao principal, clique em Adicionar outro papel e selecione um papel na lista suspensa.
- Para substituir um dos papéis do principal por um diferente, clique nesse papel e escolha outro na lista suspensa.
- Para revogar um dos papéis do principal, clique no botão Excluir de cada papel que você quer revogar.
Também é possível adicionar uma condição a um papel, modificar a condição de um papel ou remover a condição de um papel.
Clique em Salvar.
Conceder ou revogar vários papéis do IAM de forma programática
Para fazer alterações de acesso em grande escala que envolvem a concessão e revogação de vários papéis para vários principais, use o padrão read-modify-write para atualizar a política de permissão do recurso:
- Leia a política de permissão atual chamando
getIamPolicy()
. - edição da política retornada usando um editor de texto ou de forma programática, para adicionar ou remover qualquer principal ou vinculação de papel;
- Escreva a política de permissão atualizada chamando
setIamPolicy()
.
Use a CLI gcloud, a API REST ou as bibliotecas de cliente do Resource Manager para atualizar a política.
Em geral, as alterações na política entram em vigor em até dois minutos. No entanto, em alguns casos, pode levar sete minutos ou mais para que as mudanças sejam propagadas pelo sistema.
Acessar a política de permissão atual
gcloud
-
In the Trusted Cloud console, activate Cloud Shell.
At the bottom of the Trusted Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
-
Para conseguir a política de permissão do recurso, execute o comando
get-iam-policy
para o recurso:gcloud RESOURCE_TYPE get-iam-policy RESOURCE_ID --format=FORMAT > PATH
Forneça os valores a seguir:
-
RESOURCE_TYPE
: o tipo de recurso para o qual você quer conseguir a política de permissão. Use um dos seguintes valores:projects
,resource-manager folders
ouorganizations
. -
RESOURCE_ID
: o ID do seu Trusted Cloud projeto, pasta ou organização. Os IDs de projeto são alfanuméricos, comomy-project
. Os IDs de pastas e organizações são numéricos, como123456789012
. -
FORMAT
: o formato desejado para a política. Usejson
ouyaml
. -
PATH
: o caminho para um novo arquivo de saída para a política de permissão.
Por exemplo, o comando a seguir recebe a política de permissão do projeto
my-project
e a salva no diretório inicial em formato JSON:gcloud projects get-iam-policy my-project --format json > ~/policy.json
-
API_VERSION
: a versão da API a ser usada. Para projetos e organizações, usev1
. Para pastas, usev2
.RESOURCE_TYPE
: o tipo de recurso com a política que você quer gerenciar. Use o valorprojects
,folders
ouorganizations
.RESOURCE_ID
: o ID do seu projeto, organização ou pasta do Trusted Cloud. Os IDs do projeto são strings alfanuméricas, comomy-project
. Os IDs de pastas e organizações são numéricos, como123456789012
.POLICY_VERSION
: a versão da política a ser retornada. As solicitações precisam especificar a versão mais recente da política, que é a versão 3 da política. Para saber mais detalhes, consulte Como especificar uma versão da política ao receber uma política.
C#
Para autenticar no Resource Manager, configure o Application Default Credentials. Para mais informações, consulte Antes de começar.
Para saber como instalar e usar a biblioteca de cliente do Resource Manager, consulte Bibliotecas de cliente do Resource Manager.
O exemplo a seguir mostra como receber a política de permissão de um projeto. Para saber como conseguir a política de permissão de uma pasta ou organização, consulte a documentação da biblioteca de cliente do Resource Manager para sua linguagem de programação.
Java
Para autenticar no Resource Manager, configure o Application Default Credentials. Para mais informações, consulte Antes de começar.
Para saber como instalar e usar a biblioteca de cliente do Resource Manager, consulte Bibliotecas de cliente do Resource Manager.
O exemplo a seguir mostra como receber a política de permissão de um projeto. Para saber como conseguir a política de permissão de uma pasta ou organização, consulte a documentação da biblioteca de cliente do Resource Manager para sua linguagem de programação.
Python
Para autenticar no Resource Manager, configure o Application Default Credentials. Para mais informações, consulte Antes de começar.
Para saber como instalar e usar a biblioteca de cliente do Resource Manager, consulte Bibliotecas de cliente do Resource Manager.
O exemplo a seguir mostra como receber a política de permissão de um projeto. Para saber como conseguir a política de permissão de uma pasta ou organização, consulte a documentação da biblioteca de cliente do Resource Manager para sua linguagem de programação.
REST
O método
getIamPolicy
da API Resource Manager recebe a política de permissão de um projeto, pasta ou organização.Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
Método HTTP e URL:
POST https://cloudresourcemanager.googleapis.com/API_VERSION/RESOURCE_TYPE/RESOURCE_ID:getIamPolicy
Corpo JSON da solicitação:
{ "options": { "requestedPolicyVersion": POLICY_VERSION } }
Para enviar a solicitação, expanda uma destas opções:
A resposta contém a política de permissão do projeto. Por exemplo:
{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/owner", "members": [ "principal://iam.googleapis.com/locations/global/workforcePools/my-pool/subject/my-user@example.com" ] } ] }
Salve a resposta em um arquivo do tipo apropriado (
json
ouyaml
).Modificar a política de permissão
De maneira programática ou usando um editor de texto, modifique a cópia local da política de permissão do recurso para refletir os papéis que você quer conceder ou revogar.
Para evitar a substituição de outras alterações, não edite nem remova o campo
etag
da política de permissão. O campoetag
identifica o estado atual da política de permissão. Quando você define a política atualizada, o IAM compara o valoretag
na solicitação com oetag
atual e grava a política somente se os valores corresponderem.Para editar os papéis que uma política de permissão concede, é necessário editar as vinculações de papéis na política de permissão. As vinculações de papéis têm o seguinte formato:
{ "role": "ROLE_NAME", "members": [ "PRINCIPAL_1", "PRINCIPAL_2", ... "PRINCIPAL_N" ], "conditions:" { CONDITIONS } }
Os marcadores têm os seguintes valores:
ROLE_NAME
: o nome do papel que você quer conceder. Use um dos seguintes formatos:- Papéis predefinidos:
roles/SERVICE.IDENTIFIER
- Papéis personalizados para envolvidos no projeto:
projects/PROJECT_ID/roles/IDENTIFIER
- Papéis personalizados no nível da organização:
organizations/ORG_ID/roles/IDENTIFIER
Para uma lista de papéis predefinidos, consulte Noções básicas sobre papéis.
- Papéis predefinidos:
PRINCIPAL_1
,PRINCIPAL_2
,...PRINCIPAL_N
: identificadores dos principais a que você quer conceder o papel.Os identificadores dos principais geralmente têm o seguinte formato:
PRINCIPAL-TYPE:ID
. Por exemplo,principal://iam.googleapis.com/locations/global/workforcePools/my-pool/subject/my-user@example.com
ouprincipalSet://iam.googleapis.com/locations/global/workforcePools/example-pool/group/example-group@example.com
. Para conferir uma lista completa dos valores quePRINCIPAL
pode ter, consulte Identificadores de principais.CONDITIONS
: opcional. Todas as condições que especificam quando o acesso será concedido.
Conceder um papel do IAM
Para conceder papéis aos principais, modifique as vinculações de papéis na política. Para saber quais papéis é possível conceder, consulte Noções básicas sobre papéis ou Ver papéis atribuíveis para o recurso. Se você precisar de ajuda para identificar os papéis predefinidos mais adequados, consulte Encontrar os papéis predefinidos certos.
Se preferir, use condições para conceder papéis somente quando determinados requisitos forem atendidos.
Para conceder um papel que já está incluído na política, adicione o principal a uma vinculação de papel:
gcloud
Edite a política retornada adicionando o principal a uma vinculação de papel existente. Essa mudança só entrará em vigor quando você definir a política de permissão atualizada.
Por exemplo, imagine que a política de permissão contenha a seguinte vinculação de papel, que concede o papel de Revisor de segurança (
roles/iam.securityReviewer
) a Kai:{ "role": "roles/iam.securityReviewer", "members": [ "principal://iam.googleapis.com/locations/global/workforcePools/example-pool/subject/kai@example.com" ] }
Para conceder esse mesmo papel a Raha, adicione o identificador principal dela à vinculação de papel atual:
{ "role": "roles/iam.securityReviewer", "members": [ "principal://iam.googleapis.com/locations/global/workforcePools/example-pool/subject/kai@example.com", "principal://iam.googleapis.com/locations/global/workforcePools/example-pool/subject/raha@example.com" ] }
C#
Para autenticar no Resource Manager, configure o Application Default Credentials. Para mais informações, consulte Antes de começar.
Para saber como instalar e usar a biblioteca de cliente do Resource Manager, consulte Bibliotecas de cliente do Resource Manager.
Go
Para autenticar no Resource Manager, configure o Application Default Credentials. Para mais informações, consulte Antes de começar.
Para saber como instalar e usar a biblioteca de cliente do Resource Manager, consulte Bibliotecas de cliente do Resource Manager.
Java
Para autenticar no Resource Manager, configure o Application Default Credentials. Para mais informações, consulte Antes de começar.
Para saber como instalar e usar a biblioteca de cliente do Resource Manager, consulte Bibliotecas de cliente do Resource Manager.
Python
Para autenticar no Resource Manager, configure o Application Default Credentials. Para mais informações, consulte Antes de começar.
Para saber como instalar e usar a biblioteca de cliente do Resource Manager, consulte Bibliotecas de cliente do Resource Manager.
REST
Edite a política retornada adicionando o principal a uma vinculação de papel existente. Essa mudança só entrará em vigor quando você definir a política de permissão atualizada.
Por exemplo, imagine que a política de permissão contenha a seguinte vinculação de papel, que concede o papel de Revisor de segurança (
roles/iam.securityReviewer
) a Kai:{ "role": "roles/iam.securityReviewer", "members": [ "principal://iam.googleapis.com/locations/global/workforcePools/example-pool/subject/kai@example.com" ] }
Para conceder esse mesmo papel a Raha, adicione o identificador principal dela à vinculação de papel atual:
{ "role": "roles/iam.securityReviewer", "members": [ "principal://iam.googleapis.com/locations/global/workforcePools/example-pool/subject/kai@example.com", "principal://iam.googleapis.com/locations/global/workforcePools/example-pool/subject/raha@example.com" ] }
Para conceder um papel que ainda não está incluído na política, adicione uma nova vinculação de papel:
gcloud
Edite a política retornada adicionando uma nova vinculação de papel que conceda o papel ao principal. Essa mudança só entrará em vigor quando você definir a política de permissão atualizada.
Por exemplo, para conceder o papel de Administrador do Compute Storage (
roles/compute.storageAdmin
) a Raha, adicione a seguinte vinculação de papel à matrizbindings
da política de permissão:{ "role": "roles/compute.storageAdmin", "members": [ "principal://iam.googleapis.com/locations/global/workforcePools/example-pool/subject/raha@example.com" ] }
C#
Para saber como instalar e usar a biblioteca de cliente do IAM, consulte Bibliotecas de cliente do IAM. Para mais informações, consulte a documentação de referência da API C# do IAM.
Para autenticar no IAM, configure o Application Default Credentials. Para mais informações, consulte Antes de começar.
Antes de executar exemplos de código, defina a variável de ambiente
GOOGLE_CLOUD_UNIVERSE_DOMAIN
comos3nsapis.fr
.Para autenticar no Resource Manager, configure o Application Default Credentials. Para mais informações, consulte Antes de começar.
Para saber como instalar e usar a biblioteca de cliente do Resource Manager, consulte Bibliotecas de cliente do Resource Manager.
Java
Para saber como instalar e usar a biblioteca de cliente do IAM, consulte Bibliotecas de cliente do IAM. Para mais informações, consulte a documentação de referência da API Java do IAM.
Para autenticar no IAM, configure o Application Default Credentials. Para mais informações, consulte Antes de começar.
Antes de executar exemplos de código, defina a variável de ambiente
GOOGLE_CLOUD_UNIVERSE_DOMAIN
comos3nsapis.fr
.Para autenticar no Resource Manager, configure o Application Default Credentials. Para mais informações, consulte Antes de começar.
Para saber como instalar e usar a biblioteca de cliente do Resource Manager, consulte Bibliotecas de cliente do Resource Manager.
Python
Para saber como instalar e usar a biblioteca de cliente do IAM, consulte Bibliotecas de cliente do IAM. Para mais informações, consulte a documentação de referência da API Python do IAM.
Para autenticar no IAM, configure o Application Default Credentials. Para mais informações, consulte Antes de começar.
Antes de executar exemplos de código, defina a variável de ambiente
GOOGLE_CLOUD_UNIVERSE_DOMAIN
comos3nsapis.fr
.Para autenticar no Resource Manager, configure o Application Default Credentials. Para mais informações, consulte Antes de começar.
Para saber como instalar e usar a biblioteca de cliente do Resource Manager, consulte Bibliotecas de cliente do Resource Manager.
REST
Edite a política retornada adicionando uma nova vinculação de papel que conceda o papel ao principal. Essa mudança só entrará em vigor quando você definir a política de permissão atualizada.
Por exemplo, para conceder o papel de Administrador do Compute Storage (
roles/compute.storageAdmin
) a Raha, adicione a seguinte vinculação de papel à matrizbindings
da política de permissão:{ "role": "roles/compute.storageAdmin", "members": [ "principal://iam.googleapis.com/locations/global/workforcePools/example-pool/subject/raha@example.com" ] }
Você só pode conceder papéis relacionados a serviços de API ativados. Se um serviço, como o Compute Engine, não estiver ativo, você não poderá atribuir papéis exclusivamente relacionados ao Compute Engine. Para mais informações, consulte Ativar e desativar APIs.
Há algumas restrições exclusivas ao conceder permissões em projetos, especialmente o papel (
roles/owner
) Proprietário. Consulte a documentação de referência deprojects.setIamPolicy()
para mais informações.Revogar um papel do IAM
Para revogar um papel, remova o principal da vinculação de papel. Se não houver outros principais na vinculação de papel, remova a vinculação inteira.
gcloud
Revogue um papel editando a política JSON ou YAML retornada pelo comando
get-iam-policy
. Essa mudança só entrará em vigor quando você definir a política de permissão atualizada.Para revogar um papel de um principal, exclua o principal ou a vinculação da matriz
bindings
da política de permissão.C#
Para saber como instalar e usar a biblioteca de cliente do IAM, consulte Bibliotecas de cliente do IAM. Para mais informações, consulte a documentação de referência da API C# do IAM.
Para autenticar no IAM, configure o Application Default Credentials. Para mais informações, consulte Antes de começar.
Antes de executar exemplos de código, defina a variável de ambiente
GOOGLE_CLOUD_UNIVERSE_DOMAIN
comos3nsapis.fr
.Para autenticar no Resource Manager, configure o Application Default Credentials. Para mais informações, consulte Antes de começar.
Para saber como instalar e usar a biblioteca de cliente do Resource Manager, consulte Bibliotecas de cliente do Resource Manager.
Go
Para saber como instalar e usar a biblioteca de cliente do IAM, consulte Bibliotecas de cliente do IAM. Para mais informações, consulte a documentação de referência da API Go do IAM.
Para autenticar no IAM, configure o Application Default Credentials. Para mais informações, consulte Antes de começar.
Antes de executar exemplos de código, defina a variável de ambiente
GOOGLE_CLOUD_UNIVERSE_DOMAIN
comos3nsapis.fr
.Para autenticar no Resource Manager, configure o Application Default Credentials. Para mais informações, consulte Antes de começar.
Para saber como instalar e usar a biblioteca de cliente do Resource Manager, consulte Bibliotecas de cliente do Resource Manager.
Java
Para saber como instalar e usar a biblioteca de cliente do IAM, consulte Bibliotecas de cliente do IAM. Para mais informações, consulte a documentação de referência da API Java do IAM.
Para autenticar no IAM, configure o Application Default Credentials. Para mais informações, consulte Antes de começar.
Antes de executar exemplos de código, defina a variável de ambiente
GOOGLE_CLOUD_UNIVERSE_DOMAIN
comos3nsapis.fr
.Para autenticar no Resource Manager, configure o Application Default Credentials. Para mais informações, consulte Antes de começar.
Para saber como instalar e usar a biblioteca de cliente do Resource Manager, consulte Bibliotecas de cliente do Resource Manager.
Python
Para saber como instalar e usar a biblioteca de cliente do IAM, consulte Bibliotecas de cliente do IAM. Para mais informações, consulte a documentação de referência da API Python do IAM.
Para autenticar no IAM, configure o Application Default Credentials. Para mais informações, consulte Antes de começar.
Antes de executar exemplos de código, defina a variável de ambiente
GOOGLE_CLOUD_UNIVERSE_DOMAIN
comos3nsapis.fr
.Para autenticar no Resource Manager, configure o Application Default Credentials. Para mais informações, consulte Antes de começar.
Para saber como instalar e usar a biblioteca de cliente do Resource Manager, consulte Bibliotecas de cliente do Resource Manager.
REST
Revogue um papel editando a política JSON ou YAML retornada pelo comando
get-iam-policy
. Essa mudança só entrará em vigor quando você definir a política de permissão atualizada.Para revogar um papel de um principal, exclua o principal ou a vinculação da matriz
bindings
da política de permissão.Definir a política de permissão
Depois de modificar a política de permissão para conceder e revogar papéis, chame
setIamPolicy()
para atualizar aa política.gcloud
-
In the Trusted Cloud console, activate Cloud Shell.
At the bottom of the Trusted Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
-
Para definir a política de permissão para o recurso, execute o comando
set-iam-policy
para o recurso:gcloud RESOURCE_TYPE set-iam-policy RESOURCE_ID PATH
Forneça os valores a seguir:
-
RESOURCE_TYPE
: o tipo de recurso para o qual você quer definir a política de permissão. Use um dos seguintes valores:projects
,resource-manager folders
ouorganizations
. -
RESOURCE_ID
: o ID do seu Trusted Cloud projeto, pasta ou organização. Os IDs de projeto são alfanuméricos, comomy-project
. Os IDs de pastas e organizações são numéricos, como123456789012
. -
PATH
: o caminho para um arquivo que contém a nova política de permissão.
A resposta contém a política de permissão atualizada.
Por exemplo, o comando a seguir define a política de permissão armazenada em
policy.json
como a política de permissão do projetomy-project
:gcloud projects set-iam-policy my-project ~/policy.json
-
API_VERSION
: a versão da API a ser usada. Para projetos e organizações, usev1
. Para pastas, usev2
.RESOURCE_TYPE
: o tipo de recurso com a política que você quer gerenciar. Use o valorprojects
,folders
ouorganizations
.RESOURCE_ID
: o ID do seu projeto, organização ou pasta do Trusted Cloud. Os IDs do projeto são strings alfanuméricas, comomy-project
. Os IDs de pastas e organizações são numéricos, como123456789012
.-
POLICY
: uma representação JSON da política que você quer definir. Para mais informações sobre o formato de uma política, consulte a referência da política.
C#
Java
Para autenticar no Resource Manager, configure o Application Default Credentials. Para mais informações, consulte Antes de começar.
Para saber como instalar e usar a biblioteca de cliente do Resource Manager, consulte Bibliotecas de cliente do Resource Manager.
O exemplo a seguir mostra como definir a política de permissão para um projeto. Para saber como definir a política de permissão de uma pasta ou organização, consulte a documentação da biblioteca de cliente do Resource Manager para sua linguagem de programação.
Python
Para autenticar no Resource Manager, configure o Application Default Credentials. Para mais informações, consulte Antes de começar.
Para saber como instalar e usar a biblioteca de cliente do Resource Manager, consulte Bibliotecas de cliente do Resource Manager.
O exemplo a seguir mostra como definir a política de permissão para um projeto. Para saber como definir a política de permissão de uma pasta ou organização, consulte a documentação da biblioteca de cliente do Resource Manager para sua linguagem de programação.
REST
O método
setIamPolicy
da API Resource Manager define a política na solicitação como a nova política de permissão para o projeto, a pasta ou a organização.Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
Método HTTP e URL:
POST https://cloudresourcemanager.googleapis.com/API_VERSION/RESOURCE_TYPE/RESOURCE_ID:setIamPolicy
Corpo JSON da solicitação:
{ "policy": POLICY }
Para enviar a solicitação, expanda uma destas opções:
A resposta contém a política de permissão atualizada.
A seguir
- Saiba como gerenciar o acesso a contas de serviço.
- Conheça as etapas gerais para gerenciar o acesso a outros recursos.
- Saiba como escolher os papéis predefinidos mais apropriados.
- Descubra como visualizar os papéis que podem ser atribuídos em um recurso específico.
- Aprenda a tornar o acesso de um principal condicional com as vinculações de papéis condicionais.
Exceto em caso de indicação contrária, o conteúdo desta página é licenciado de acordo com a Licença de atribuição 4.0 do Creative Commons, e as amostras de código são licenciadas de acordo com a Licença Apache 2.0. Para mais detalhes, consulte as políticas do site do Google Developers. Java é uma marca registrada da Oracle e/ou afiliadas.
Última atualização 2025-08-08 UTC.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Não contém as informações de que eu preciso","missingTheInformationINeed","thumb-down"],["Muito complicado / etapas demais","tooComplicatedTooManySteps","thumb-down"],["Desatualizado","outOfDate","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Problema com as amostras / o código","samplesCodeIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-08-08 UTC."],[[["This document explains how to manage access to Google Cloud projects, folders, and organizations, detailing the processes for granting, changing, and revoking access using allow policies, also known as IAM policies."],["Access is managed via role bindings within allow policies, which associate principals (users or service accounts) with IAM roles, granting those roles to the principals on the specified resource and its descendants."],["You can manage access to resources using the Google Cloud console, the gcloud CLI, the REST API, or the Resource Manager client libraries, with different authentication methods detailed for each tool and code language."],["The document provides guidance on how to view current access, grant or revoke single or multiple roles, and use the \"read-modify-write\" pattern to update a resource's allow policy, with specific examples in different coding languages."],["It is necessary to configure Application Default Credentials before using the Resource Manager client libraries and also describes how to handle policy inheritance, along with providing links for further learning such as managing access to service accounts and selecting appropriate predefined roles."]]],[]]-
Para gerenciar o acesso a um projeto:
Administrador do IAM do projeto (