A API Cloud Asset permite que você use uma linguagem de consulta personalizada para pesquisar políticas de permissão do Identity and Access Management (IAM) em um projeto, uma pasta ou uma organização.
Antes de começar
Ative a API Cloud Asset no projeto.
Confira se o autor da chamada recebeu um papel que contenha a permissão
cloudasset.assets.searchAllIamPolicies
. Saiba mais no tópico Controle de acesso.
Pesquisar políticas de permissão
Console
Para pesquisar todas as políticas de permissão do IAM, conclua as etapas a seguir.
Acesse a página Inventário de recursos no console do Google Cloud.
Para definir o escopo da pesquisa, abra a caixa de lista Projetos na barra de menus e selecione a organização, a pasta ou o projeto a ser consultado.
Selecione a guia Política do IAM.
Para pesquisar políticas de permissão, use uma consulta predefinida ou crie sua própria.
Para usar uma consulta predefinida, selecione opções em Predefinições de consulta no painel Filtrar resultados. Para filtrar resultados, selecione opções em Filtros.
Para criar a sua própria consulta, insira o texto da consulta na barra Filtro. Selecione a caixa de texto, e uma lista de campos pesquisáveis será exibida. A pesquisa de políticas aceita vários campos. Saiba mais sobre a sintaxe de consulta.
As políticas de permissão que correspondem à consulta são listadas na tabela Result.
Para exibir a consulta como um comando da Google Cloud CLI, selecione Ver consulta.
Para exportar os resultados, selecione Fazer o download do CSV.
gcloud
É possível chamar SearchAllIamPolicies
usando o comando gcloud asset search-all-iam-policies
. Você precisa executar a Google Cloud CLI versão 302.0.0 ou mais recente. Confira
sua versão com o comando gcloud version
:
gcloud asset search-all-iam-policies \
--scope=SCOPE \
--query="QUERY" \
--asset-types=ASSET_TYPE_1,ASSET_TYPE_2,... \
--order-by=ORDER_BY
Forneça os valores a seguir:
SCOPE
: obrigatório. Um escopo pode ser um projeto, uma pasta ou uma organização. A pesquisa é limitada às políticas de permissão do IAM nesse escopo. O autor da chamada precisa receber um papel que contenha a permissãocloudasset.assets.searchAllIamPolicies
no escopo selecionado. Se não for especificada, a propriedade do projeto configurada será usada.Os valores permitidos são:
projects/PROJECT_ID
projects/PROJECT_NUMBER
Como encontrar um número de projeto do Google Cloud
Console
Para encontrar um número de projeto do Google Cloud, siga estas etapas:
-
Acesse a página Painel no console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Selecione a organização na caixa Selecionar de e pesquise o nome do projeto.
- Clique no nome do projeto para alternar para ele. O número do projeto é mostrado no card Informações do projeto.
CLI da gcloud
Recupere um número de projeto do Google Cloud com o seguinte comando:
gcloud projects describe PROJECT_ID --format="value(projectNumber)"
-
folders/FOLDER_ID
Como encontrar um ID de pasta do Google Cloud
Console
Para encontrar um ID de pasta do Google Cloud, siga estas etapas:
-
Acesse o console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Clique na caixa Selecionar de e escolha sua organização.
- Pesquise o nome da pasta. O ID é exibido ao lado do nome da pasta.
CLI da gcloud
Para recuperar um ID de pasta do Google Cloud localizado no nível da organização, use o seguinte comando:
gcloud resource-manager folders list \ --organization=$(gcloud organizations describe ORGANIZATION_NAME \ --format="value(name.segment(1))") \ --filter='"DISPLAY_NAME":"TOP_LEVEL_FOLDER_NAME"' \ --format="value(ID)"
Em que TOP_LEVEL_FOLDER_NAME pode ser uma correspondência de string completa ou parcial. Remova a opção
--format
para conferir mais informações sobre as pastas encontradas.Para ver o ID de uma pasta dentro de outra, liste as subpastas:
gcloud resource-manager folders list --folder=FOLDER_ID
-
organizations/ORGANIZATION_ID
Como encontrar um ID da organização do Google Cloud
Console
Para encontrar um ID da organização do Google Cloud, siga estas etapas:
-
Acesse o console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Clique na caixa Selecionar de e escolha sua organização.
- Selecione a guia Todos. O ID é exibido ao lado do nome da organização.
CLI da gcloud
Recupere um ID da organização do Google Cloud com o seguinte comando:
gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"
-
QUERY
: opcional. A instrução de consulta. Consulte Sintaxe de consulta para mais informações. Se não for especificada ou estiver vazia, ela pesquisa todas as políticas de permissão do IAM noscope
especificado. Observe que a string de consulta é comparada com cada vinculação de política de permissão, incluindo os principais, os papéis e as condições do IAM. As políticas de permissão retornadas contêm apenas as vinculações que correspondem à sua consulta. Para saber mais sobre a estrutura da política de permissão, consulte Noções básicas sobre políticas.Exemplos:
policy:amy@gmail.com
para encontrar vinculações de política de permissão que especificam o usuário "amy@gmail.com".policy:roles/compute.admin
para encontrar vinculações de política de permissão que especifiquem o papel Administrador do Compute.policy:comp*
para encontrar vinculações de política de permissão que contenham "comp" como um prefixo de qualquer palavra na vinculação.policy.role.permissions:storage.buckets.update
para encontrar vinculações de política de permissão que especifiquem um papel contendo a permissão "storage.buckets.update". Observe que, se o autor da chamada não tiver recebido um papel que contenha a permissãoiam.roles.get
no papel pretendido, permita que as vinculações de política que especifiquem esse papel sejam descartadas dos resultados da pesquisa.policy.role.permissions:upd*
para encontrar vinculações de política de permissão que especifiquem um papel contendo "upd" como um prefixo de qualquer palavra na vinculação. Observe que, se o autor da chamada não tiver recebido um papel que contenha a permissãoiam.roles.get
no papel desejado, as vinculações de política que especificam esse papel serão descartadas dos resultados da pesquisa.resource:organizations/123456
para encontrar vinculações de política de permissão definidas em "organizations/123456".resource=//cloudresourcemanager.googleapis.com/projects/myproject
para encontrar vinculações de política de permissão definidas no projeto chamado "myproject".Important
para encontrar vinculações de política de permissão que contenham "Importante" como uma palavra em qualquer um dos campos pesquisáveis (exceto para as permissões incluídas).resource:(instance1 OR instance2) policy:amy
para encontrar vinculações de política de permissão definidas nos recursos "instance1" ou "instance2" e também especificar o usuário "amy".roles:roles/compute.admin
para encontrar vinculações de política de permissão que especifiquem o papel Administrador do Compute.memberTypes:user
para encontrar vinculações de política de permissão que contenham o tipo de principal "usuário".
ASSET_TYPE
: opcional. Uma lista de tipos de recursos aos quais o Identity and Access Management permitem que as políticas estejam anexadas. Se estiver vazio, ela vai pesquisar as políticas de permissão do Identity and Access Management anexadas a todos os tipos de recursos pesquisáveis. As expressões regulares são aceitas. Se a expressão regular não corresponder a nenhum tipo de recurso compatível, um erroINVALID_ARGUMENT
será retornado.ORDER_BY
: opcional. Uma lista de campos separada por vírgulas que especifica a ordem de classificação dos resultados. A ordem padrão é crescente. AdicioneDESC
depois do nome do campo para indicar a ordem decrescente. Caracteres de espaço redundantes são ignorados. Exemplo:"assetType DESC, resource"
. Somente os campos primitivos singulares na resposta são classificáveis:resource
assetType
project
Não há suporte para todos os outros campos, como campos repetidos (por exemplo,
folders
) e não primitivos (por exemplo,policy
).
Veja a seguir exemplos de comandos gcloud
:
Encontre todas as vinculações de política de permissão do IAM no
organizations/123456
que contenham o domíniomycompany.com
:gcloud asset search-all-iam-policies \ --scope=organizations/123456 \ --query="policy:\"domain:mycompany.com\""
Encontre todas as vinculações de política de permissão do IAM no
organizations/123456
em quemyuser@mycompany.com
recebeu o papel básico de Proprietário (roles/owner
):gcloud asset search-all-iam-policies \ --scope=organizations/123456 \ --query="policy:(roles/owner myuser@mycompany.com)"
Encontre todas as vinculações de política de permissão do IAM no
organizations/123456
que estão definidas emprojects/12345678
:gcloud asset search-all-iam-policies \ --scope=organizations/123456 \ --query="resource:projects/12345678"
REST
Chame SearchAllIamPolicies
usando um token OAuth válido para um projeto. Para chamar o método
SearchAllIamPolicies
do Cloud Shell ou de qualquer console em que o comando gcloud
esteja disponível:
Se você ainda não configurou a tela de consentimento do OAuth do seu projeto, é preciso fazer isso. É necessário informar um endereço de e-mail e o nome do produto para essa tela.
Acesse a tela de permissão OAuth do seu projeto.
Digite o Nome do aplicativo que você quer exibir.
Em E-mail de suporte, selecione o endereço de e-mail que você quer exibir como um contato público. Precisa ser seu endereço de e-mail ou um grupo do Google que seja seu.
Adicione os detalhes opcionais que você quiser.
Clique em Salvar.
Crie um token OAuth para seu projeto. Consulte Como configurar o OAuth 2.0 para mais informações.
Acesse a página "Criar ID do cliente OAuth".
Selecione App para computador como o Tipo de aplicativo.
Clique em Criar.
Faça o download do arquivo
client_secret.json
.Acesse a página Credenciais.
À direita do novo ID do cliente, clique em
Fazer o download do JSON.Armazene com segurança o arquivo em um local que somente o app possa acessar.
Faça login usando o arquivo JSON com o seguinte comando:
gcloud auth application-default login --client-id-file=YOUR_JSON_FILE
Esse comando solicita que você abra um link. Verifique se a página mostra o Nome do aplicativo que você definiu na tela de permissão OAuth.
Agora é possível consultar políticas de permissão do IAM usando comandos
curl
.curl -X POST \ -H "X-HTTP-Method-Override: GET" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d '{ "assetTypes": [ "ASSET_TYPE_1", "ASSET_TYPE_2", "..." ], "orderBy": "ORDER_BY", "pageSize": PAGE_SIZE, "query": "QUERY" }' \ https://cloudasset.googleapis.com/v1/SCOPE:searchAllIamPolicies
Informe os seguintes detalhes:
ASSET_TYPE
: opcional. Uma lista de tipos de recursos aos quais as políticas do Identity and Access Management estão anexadas. Se estiver vazio, ela pesquisa as políticas de permissão do Identity and Access Management anexadas a todos os tipos de recursos pesquisáveis. As expressões regulares são aceitas. Se a expressão regular não corresponder a nenhum tipo de recurso compatível, um erroINVALID_ARGUMENT
será retornado.ORDER_BY
: opcional. Uma lista de campos separados por vírgulas que especifica a ordem de classificação dos resultados. A ordem padrão é crescente. AdicioneDESC
após o nome do campo para indicar a ordem decrescente. Caracteres de espaço redundantes são ignorados. Exemplo:"assetType DESC, resource"
. Somente os campos primitivos singulares na resposta são classificáveis:resource
assetType
project
Não há suporte para todos os outros campos, como campos repetidos (por exemplo,
folders
) e não primitivos (por exemplo,policy
).PAGE_SIZE
: opcional. O número de resultados a serem retornados por página. O valor máximo é 2000. Se o valor for definido como0
ou um valor negativo, um padrão apropriado será selecionado. UmnextPageToken
é retornado para recuperar os resultados subsequentes.QUERY
: opcional. A instrução de consulta. Consulte Sintaxe de consulta para mais informações. Se não for especificada ou estiver vazia, ela pesquisa todas as políticas de permissão do IAM noscope
especificado. Observe que a string de consulta é comparada com cada vinculação de política de permissão, incluindo principais, papéis e condições do IAM. As políticas de permissão retornadas contêm apenas as vinculações que correspondem à sua consulta. Para saber mais sobre a estrutura da política de permissão, consulte Noções básicas sobre as políticas de permissão.Exemplos:
policy:amy@gmail.com
para encontrar vinculações de política de permissão que especifiquem o usuário "amy@gmail.com".policy:roles/compute.admin
para encontrar vinculações de política de permissão que especifiquem o papel Administrador do Compute.policy:comp*
para encontrar vinculações de política de permissão que contenham "comp" como um prefixo de qualquer palavra na vinculação.policy.role.permissions:storage.buckets.update
para encontrar vinculações de política de permissão que especifiquem um papel contendo a permissão "storage.buckets.update". Se o autor da chamada não tiver recebido um papel que contenha a permissãoiam.roles.get
no papel desejado, as vinculações de política que especificam esse papel serão descartadas dos resultados da pesquisa.policy.role.permissions:upd*
para encontrar vinculações de política de permissão que especifiquem um papel contendo "upd" como prefixo de qualquer palavra na permissão do papel. Observe que, se o autor da chamada não tiver recebido um papel que contenha a permissãoiam.roles.get
no papel que você quer, permita que as vinculações de políticas que especifiquem esse papel sejam descartadas dos resultados da pesquisa.resource:organizations/123456
para encontrar vinculações de política de permissão definidas em "organizations/123456".resource=//cloudresourcemanager.googleapis.com/projects/myproject
para encontrar vinculações de política de permissão definidas no projeto chamado "myproject".Important
para encontrar vinculações de política de permissão que contenham "Importante" como uma palavra em qualquer um dos campos pesquisáveis (exceto as permissões incluídas).resource:(instance1 OR instance2) policy:amy
para encontrar vinculações de política de permissão definidas nos recursos "instance1" ou "instance2" e também especificar a "amy" do usuário.roles:roles/compute.admin
para encontrar vinculações de política de permissão que especifiquem o papel Administrador do Compute.memberTypes:user
para encontrar vinculações de política de permissão que contenham o tipo de principal "usuário".
SCOPE
: um escopo pode ser um projeto, uma pasta ou uma organização. A pesquisa é limitada às políticas de permissão do IAM nesse escopo. O autor da chamada precisa receber um papel que tenha a permissãocloudasset.assets.searchAllIamPolicies
no escopo selecionado. Se não for especificada, a propriedade do projeto configurada será usada.Os valores permitidos são:
projects/PROJECT_ID
projects/PROJECT_NUMBER
Como encontrar um número de projeto do Google Cloud
Console
Para encontrar um número de projeto do Google Cloud, siga estas etapas:
-
Acesse a página Painel no console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Selecione a organização na caixa Selecionar de e pesquise o nome do projeto.
- Clique no nome do projeto para alternar para ele. O número do projeto é mostrado no card Informações do projeto.
CLI da gcloud
Recupere um número de projeto do Google Cloud com o seguinte comando:
gcloud projects describe PROJECT_ID --format="value(projectNumber)"
-
folders/FOLDER_ID
Como encontrar um ID de pasta do Google Cloud
Console
Para encontrar um ID de pasta do Google Cloud, siga estas etapas:
-
Acesse o console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Clique na caixa Selecionar de e escolha sua organização.
- Pesquise o nome da pasta. O ID é exibido ao lado do nome da pasta.
CLI da gcloud
Para recuperar um ID de pasta do Google Cloud localizado no nível da organização, use o seguinte comando:
gcloud resource-manager folders list \ --organization=$(gcloud organizations describe ORGANIZATION_NAME \ --format="value(name.segment(1))") \ --filter='"DISPLAY_NAME":"TOP_LEVEL_FOLDER_NAME"' \ --format="value(ID)"
Em que TOP_LEVEL_FOLDER_NAME pode ser uma correspondência de string completa ou parcial. Remova a opção
--format
para conferir mais informações sobre as pastas encontradas.Para ver o ID de uma pasta dentro de outra, liste as subpastas:
gcloud resource-manager folders list --folder=FOLDER_ID
-
organizations/ORGANIZATION_ID
Como encontrar um ID da organização do Google Cloud
Console
Para encontrar um ID da organização do Google Cloud, siga estas etapas:
-
Acesse o console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Clique na caixa Selecionar de e escolha sua organização.
- Selecione a guia Todos. O ID é exibido ao lado do nome da organização.
CLI da gcloud
Recupere um ID da organização do Google Cloud com o seguinte comando:
gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"
-
Biblioteca de cliente e referência de API
SearchAllIamPolicies
:
Como criar uma consulta
Consulte Sintaxe de consulta para saber mais sobre a linguagem de consulta.
Consulte Como pesquisar amostras de políticas de permissão do IAM para saber mais sobre as consultas de amostra para vários casos de uso reais.
Consulte as políticas de permissão do IAM vinculando informações
Para pesquisar políticas de permissão do IAM, uma expressão de consulta tem o seguinte formato:
policy:QUERY
Também é possível pesquisar exclusivamente os papéis ou tipos de principais com os seguintes formatos:
Correspondência exata:
memberTypes=QUERY
roles=QUERY
Correspondência parcial:
memberTypes:QUERY
roles:QUERY
Principal
As vinculações de política de permissão do IAM oferecem suporte a cinco tipos de principais:
Contas do Google, como
user:user@gmail.com
Grupos do Google, como
group:devs@googlegroups.com
Domínios do Cloud Identity e do G Suite, como
domain:google.com
Contas de serviço, como
serviceAccount:my-other-app@appspot.gserviceaccount.com
Identificadores especiais, como
allUsers
eallAuthenticatedUsers
Você pode limitar sua consulta para permitir políticas relacionadas a um usuário específico usando a seguinte sintaxe:
policy:"user:amy@mycompany.com"
É necessário colocar user:amy@mycompany.com
entre aspas duplas, já que
ele contém o caractere especial :
. É possível omitir o prefixo user:
ou group:
em uma
string de consulta, se o valor da consulta for único o suficiente ou se você quiser pesquisar
o endereço de e-mail independentemente do tipo de principal. Por exemplo, a consulta a seguir
provavelmente só corresponde a um usuário:
policy:amy@mycompany.com
Você também pode limitar a consulta a políticas relacionadas a um tipo específico de principal usando a seguinte sintaxe:
policy:user
memberTypes:user
memberTypes=user
É possível que policy:user
corresponda a um tipo de principal diferente. Por
exemplo: group:test-user@mycompany.com
. Use memberTypes
para limitar a pesquisa a tipos principais específicos.
Exemplos: consulta por principal
Encontre todas as vinculações da política de permissão do IAM que especificam o usuário
Amy
:policy:amy
Encontre todas as vinculações da política de permissão do IAM que especificam o domínio
mydomain.com
:policy:mydomain.com
Encontre todas as vinculações de política de permissão do IAM que especificam o usuário
Amy
eJohn
:policy:(amy john)
Encontre todas as vinculações da política de permissão do IAM que especificam o usuário
Amy
ouJohn
:policy:(amy OR john)
Encontre todas as vinculações de política de permissão do IAM na sua organização que contenham
amy@mycompany.com
:policy:amy@mycompany.com
Encontre todas as vinculações de política de permissão do IAM na organização que contenham o domínio
mycompany.com
:policy:"domain:mycompany.com"
Encontre todas as vinculações de política de permissão do IAM que atribuem papéis à conta de serviço
mycompany.gserviceaccount.com
:policy:"serviceAccount:mycompany.gserviceaccount.com"
Encontre todas as vinculações de política de permissão do IAM que atribuem papéis ao grupo
admins
:policy:"group:admins"
Encontre todas as vinculações de política de permissão do IAM que atribuem papéis a todos os usuários:
memberTypes:allUsers
Encontre todas as vinculações de política de permissão do IAM que atribuem papéis a todos os usuários autenticados:
memberTypes:allAuthenticatedUsers
Encontre todas as vinculações de política de permissão do IAM que atribuem papéis a
amy@mycompany.com
ou ao domíniomycompany.com
:policy:(amy@mycompany.com OR "domain:mycompany.com")
Papel
As vinculações de políticas de permissão do IAM são compatíveis com diferentes tipos de papéis.
Todos os nomes de papéis do IAM começam com o prefixo roles/
.
Papéis básicos: há três papéis que já existiam antes da introdução do IAM: Proprietário (
roles/owner
), Editor (roles/editor
) e Leitor (roles/viewer
).Papéis predefinidos: o IAM fornece outros papéis predefinidos que dão acesso granular a diferentes recursos. Veja todos os papéis predefinidos.
Papéis personalizados: papéis do IAM definidos pelo usuário que contêm uma lista selecionada de permissões.
É possível limitar a consulta para permitir políticas relacionadas a um papel específico usando a seguinte sintaxe:
policy:roles/role-name
roles:roles/role-name
roles=roles/role-name
Você poderá omitir o prefixo roles/
em uma string de consulta se o valor da consulta
for exclusivo o suficiente. Por exemplo, a consulta a seguir provavelmente corresponde apenas ao papel
roles/cloudasset.owner
:
policy:cloudasset.owner
roles:cloudasset.owner
É possível que policy:cloudasset.owner
corresponda a uma função diferente. Por
exemplo, quando um papel é concedido ao principal
user:cloudasset.owner@mycompany.com
. Use roles
para limitar a pesquisa a papéis.
Exemplos: consulta por papel
Encontre todas as vinculações da política de permissão do IAM que especificam o papel
owner
.policy:roles/owner roles:roles/owner roles=roles/owner
Encontre todas as vinculações da política de permissão do IAM que atribuem o papel de proprietário a
amy@mycompany.com
:policy:(roles/owner amy@mycompany.com)
Encontre todas as vinculações de política de permissão do IAM que atribuem o papel
compute.admin
aos principais com endereços de e-mail que contenham a palavrajohn
:policy:(roles/compute.admin john)
Encontre todas as vinculações de política de permissão do IAM que concedem o papel
viewer
aos usuários com "swe" ou "sde" como prefixo.policy:(roles/viewer (swe* OR sde*))
Condições do IAM
As vinculações de política de permissão do IAM podem conter um objeto condition
, que
permite definir e aplicar o controle de acesso condicional baseado em atributos nos
recursos do Google Cloud. Para mais informações, consulte a
Visão geral das condições do IAM.
É possível limitar a consulta para permitir políticas relacionadas a uma condição específica usando a seguinte sintaxe:
policy:condition_information
Exemplos: consulta por condição
Encontre todas as vinculações de política de permissão do IAM que especificam uma condição com um título/descrição que contenha a palavra "myCondition":
policy:myCondition
Encontre todas as vinculações de política de permissão do IAM que especificam uma condição com uma expressão que contém o atributo "request.time":
policy:"request.time"
Consultar políticas de permissão do IAM por permissões incluídas
Os papéis em uma política de permissão podem incluir uma lista de permissões. Consulte a referência de permissões do IAM para ver mais detalhes. É possível limitar a consulta para permitir políticas que contenham uma permissão específica. Os formatos de expressão de consulta são os seguintes:
- Correspondência exata:
policy.role.permissions=QUERY
- Correspondência parcial:
policy.role.permissions:QUERY
Exemplos: consulta por permissões
Encontre todas as vinculações da política de permissão do IAM que contenham a permissão
compute.instances.create
:policy.role.permissions:compute.instances.create policy.role.permissions=compute.instances.create
Encontre todas as vinculações da política de permissão do IAM que contenham as permissões relacionadas ao
compute.instances
:policy.role.permissions:compute.instances
Encontre todas as vinculações de política de permissão do IAM que contenham as permissões
cloudasset.assets.export...
(por exemplo,cloudasset.assets.exportAssets
ecloudasset.assets.exportIamPolicyAnalysis
):policy.role.permissions:cloudasset.assets.export*
Encontre todas as vinculações da política de permissão do IAM que concedem a alguém permissões para alterar as políticas de permissão do IAM:
policy.role.permissions:setIamPolicy
Encontre todas as vinculações da política de permissão do IAM com um papel que contenha as permissões
compute.instances.create
ecompute.disks.create
:policy.role.permissions:(compute.instances.create compute.disks.create)
Encontre todas as vinculações de política de permissão do IAM que contenham a permissão
compute.instances.create
e especifique o usuárioamy
:policy.role.permissions:compute.instances.create policy:amy policy.role.permissions=compute.instances.create policy:amy
Consultar políticas de permissão do IAM por recurso associado
Ao realizar uma pesquisa, você pode especificar um nome completo de recurso para pesquisar apenas as políticas de permissão definidas diretamente no recurso. Também é possível especificar um projeto, uma pasta ou uma organização para pesquisar apenas as políticas de permissão definidas nos recursos localizados no determinado projeto/pasta/organização. Os formatos de consulta são os seguintes:
Correspondência exata:
resource=QUERY
project=QUERY
folders=QUERY
organization=QUERY
Correspondência parcial:
resource:QUERY
project:QUERY
folders:QUERY
organization:QUERY
Exemplos: consulta por recurso associado
Encontre todas as vinculações de política de permissão do IAM definidas diretamente em um recurso com nome completo do recurso exatamente igual a
//cloudresourcemanager.googleapis.com/projects/myproject
:resource=//cloudresourcemanager.googleapis.com/projects/myproject
Encontre todas as vinculações de política de permissão do IAM que são definidas diretamente em recursos com o nome completo do recurso contendo a palavra
myproject
:resource:myproject
Encontre todas as vinculações de política de permissão do IAM que são definidas diretamente em recursos com o nome completo do recurso que contém uma palavra com determinado prefixo
myproj
:resource:myproj*
Encontre todas as vinculações de política de permissão do IAM que são definidas diretamente nos recursos de um determinado tipo de serviço:
resource:cloudresourcemanager
Encontre todas as vinculações de política de permissão do IAM definidas em
myproject
oumyfolder
:resource:(myproject OR myfolder)
Encontre todas as vinculações de política de permissão do IAM definidas nos recursos
cloudresourcemanager
e atribua o papel de proprietário aos usuáriosgmail.com
:resource:cloudresourcemanager policy:(roles/owner gmail.com)
Encontre todas as vinculações de política de permissão do IAM configuradas em recursos com
project
que tem o número123
:project:123
Encontre todas as vinculações de política de permissão do IAM definidas em recursos contidos em
folder
com o número123
:folders:123
Encontre todas as vinculações de política de permissão do IAM configuradas em recursos com
organization
que tem o número123
:organization:123
Consultar políticas de permissão do IAM por texto livre
Também é possível usar uma consulta de texto livre sem especificar um campo. A resposta retorna políticas de permissão, desde que haja um campo pesquisável (por exemplo, campos de vinculação de política de permissão ou campos de recurso) que correspondam à consulta.
Exemplos: consulta por texto livre
Encontre todas as vinculações de política de permissão do IAM no
scope
com campos de metadados (por exemplo, vinculações de política de permissão ou campos de recursos) que contenhamImportant
como uma palavra:Important
Encontre todas as vinculações de política de permissão do IAM no
scope
com campos de metadados (por exemplo, vinculações de política de permissão ou campos de recursos) que contenhamimport
como prefixo de qualquer palavra:import*