Pesquisando políticas de permissão do IAM

A API Cloud Asset permite usar uma linguagem de consulta personalizada para pesquisar políticas de gerenciamento de identidade e acesso (IAM) em um projeto, pasta ou organização.

Antes de começar

Pesquisar políticas de permissão

Console

Para pesquisar todas as políticas de permissão do IAM, siga estas etapas.

  1. Acesse a página Inventário de recursos no console do Google Cloud.

    Acessar o inventário de recursos

  2. 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.

  3. Selecione a guia Política do IAM.

  4. Para pesquisar políticas de permissão, use uma consulta predefinida ou crie uma 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 sintaxe de consulta.

As políticas de permissão correspondentes à consulta são listadas na tabela Resultado.

Para visualizar 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 usar a versão 302.0.0 ou mais recente da Google Cloud CLI. Você pode verificar 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ão cloudasset.assets.searchAllIamPolicies no escopo selecionado. Se não for especificado, o propriedade do projeto configurado é usado.

    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:

      1. Acesse a página Painel de controle no console do Google Cloud.

        Ir para o painel

      2. Clique na caixa Alternador na barra de menus.
      3. Selecione sua organização na caixa Selecionar de e pesquise o nome do projeto.
      4. Clique no nome do projeto para alternar para ele. O número do projeto é mostrado 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:

      1. Acesse o console do Google Cloud.

        Acesse o console do Google Cloud.

      2. Clique na caixa Alternador na barra de menus.
      3. Clique na caixa Selecionar de e escolha sua organização.
      4. Pesquise o nome da sua pasta. O ID da pasta é mostrado ao lado do nome dela.

      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 o A opção --format para mais informações sobre as pastas encontradas.

      Para conferir o ID de uma pasta em 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 de organização do Google Cloud, siga estas etapas:

      1. Acesse o console do Google Cloud.

        Acessar o console do Google Cloud

      2. Clique na caixa do seletor na barra de menus.
      3. Clique na caixa Selecionar de e escolha a organização.
      4. Selecione a guia Todos. O ID da organização aparece ao lado do nome dela.

      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 da consulta para mais informações. Se não for especificado ou estiver vazio, ele pesquisa todas as políticas de permissão do IAM no scope especificado. 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 de políticas de permissão, consulte Noções básicas sobre políticas.

    Exemplos:

    • policy:amy@gmail.com para encontrar vinculações de políticas de permissão que especifiquem o usuário "amy@gmail.com".

    • policy:roles/compute.admin para encontrar vinculações de políticas de permissão que especifiquem o papel de administrador do Compute.

    • policy:comp* para encontrar vinculações de política de permissão que contenham "comp" como prefixo de qualquer palavra na vinculação.

    • policy.role.permissions:storage.buckets.update para encontrar vinculações de políticas que permitem que especifiquem um papel que contenha a permissão "storage.buckets.update". Se o autor da chamada não tiver recebido um papel que contenha a permissão iam.roles.get no papel pretendido, as vinculações de política que especificam esse papel serão removidas dos resultados da pesquisa.

    • policy.role.permissions:upd* para encontrar a política de permissão vinculações que especificam um papel contendo "upd" como prefixo de qualquer palavra a vinculação. Se o autor da chamada não tiver recebido um papel que contenha a permissão iam.roles.get no papel pretendido, as vinculações de política que especificam esse papel serão removidas dos resultados da pesquisa.

    • resource:organizations/123456 para encontrar vinculações de políticas 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 o (permissões incluídas).

    • resource:(instance1 OR instance2) policy:amy para encontrar permitir vinculações de política definidas nos recursos "instance1" ou "instance2" e especificar o usuário "amy".

    • roles:roles/compute.admin para encontrar vinculações de política de permissão que especificam o papel de Administrador do Compute.

    • memberTypes:user para encontrar vinculações de políticas de permissão que contenham o tipo de principal "user".

  • ASSET_TYPE: opcional. Uma lista dos tipos de recursos que estão anexadas às políticas de permissão do Identity and Access Management. Se estiver vazio, ele pesquisará O Identity and Access Management permite que as políticas sejam anexadas a todos os tipos de recursos pesquisáveis. As expressões regulares são suporte. Se a expressão regular não corresponder a nenhum tipo de recurso com suporte, um erro INVALID_ARGUMENT será retornado.

  • ORDER_BY: opcional. Uma lista separada por vírgulas de campos que especificam a ordem de classificação dos resultados. A ordem padrão é crescente. Adicione DESC 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

    Todos os outros campos, como campos repetidos (por exemplo, folders) e campos não primitivos (por exemplo, policy) não são compatíveis.

Veja a seguir exemplos de comandos gcloud:

  • Encontre todas as vinculações de política de permissão do IAM no organizations/123456 que contêm o domínio mycompany.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 na organizations/123456 em que myuser@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 definidos em projects/12345678:

    gcloud asset search-all-iam-policies \
        --scope=organizations/123456 \
        --query="resource:projects/12345678"
    

REST

Você pode chamar 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:

  1. Se você ainda não configurou a tela de consentimento do OAuth do seu projeto, precisará fazer isso. É necessário usar um endereço de e-mail e o nome do produto para a tela de consentimento do OAuth.

    1. Acesse a tela de permissão OAuth do seu projeto.

      Configurar a tela de consentimento

    2. Digite o Nome do aplicativo que você quer exibir.

    3. 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 um grupo do Google que pertença a você.

    4. Adicione os detalhes opcionais que você quiser.

    5. Clique em Salvar.

  2. Crie um token OAuth para seu projeto. Para mais informações, consulte Como configurar o OAuth 2.0.

    1. Acesse a página "Criar ID do cliente OAuth".

      Criar um cliente OAuth

    2. Selecione App para computador como o Tipo de aplicativo.

    3. Clique em Criar.

  3. Faça o download do arquivo client_secret.json.

    1. Acesse a página Credenciais.

    2. À direita do novo ID do cliente, clique em Faça o download do JSON.

    3. Armazene com segurança o arquivo em um local que somente o app possa acessar.

  4. 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 definido na tela de consentimento do OAuth.

  5. Agora é possível consultar as 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
    

    Forneça os seguintes detalhes:

    • ASSET_TYPE: opcional. Uma lista de tipos de recursos aos quais as políticas de permissão do Identity and Access Management estão anexadas. Se estiver vazio, ele vai pesquisar as políticas de permissão do Identity and Access Management anexadas a todos os tipos de recursos pesquisáveis. Expressões regulares são compatíveis. Se a expressão regular não corresponder a nenhuma tipo de recurso, um erro INVALID_ARGUMENT será retornado.

    • ORDER_BY: opcional. Uma lista separada por vírgulas de campos que especifica a ordem de classificação dos resultados. A ordem padrão é crescente. Adicione DESC após o nome do campo para indicar em 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

      Os demais campos, como os repetidos (por exemplo, folders) e não primitivos (por exemplo, policy), não são compatíveis.

    • PAGE_SIZE: opcional. O número de resultados a retorno por página. O valor máximo é 2000. Se o valor for definido como 0 ou um valor negativo, um padrão apropriado será selecionado. Um nextPageToken é retornado para recuperar resultados subsequentes.

    • QUERY: opcional. A instrução de consulta. Consulte Sintaxe de consulta para saber mais informações imprecisas ou inadequadas. Se não for especificado ou vazio, pesquisa todas as Políticas de permissão do IAM no scope especificado. A string de consulta é comparada a 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 a vinculações que correspondam à sua consulta. Para saber mais sobre a estrutura de políticas de permissão, consulte Noções básicas sobre políticas de permissão.

      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íticas de permissão que especifiquem o papel de Administrador do Compute.

      • policy:comp* para encontrar vinculações de políticas de permissão que contenham "comp" como prefixo de qualquer palavra na vinculação.

      • policy.role.permissions:storage.buckets.update para encontrar vinculações de políticas que permitem que especifiquem um papel que contenha a permissão "storage.buckets.update". Se o autor da chamada não tiver recebido um papel que contenha a permissão iam.roles.get no papel pretendido, as vinculações de política que especificam esse papel vão ser removidas dos resultados da pesquisa.

      • policy.role.permissions:upd* para encontrar vinculações de políticas de permissão que especifiquem um papel que contenha "upd" como prefixo de qualquer palavra na permissão do papel. Se o autor da chamada não tiver sido recebeu um papel que contém a permissão iam.roles.get no papel desejado, as vinculações de política que especificam esse papel são descartadas dos resultados da pesquisa.

      • resource:organizations/123456 para encontrar vinculações de políticas de permissão definidas em "organizations/123456".

      • resource=//cloudresourcemanager.googleapis.com/projects/myproject para encontrar vinculações de políticas de permissão definidas no projeto "myproject".

      • Important para encontrar vinculações de políticas de permissão que contenham "Important" 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íticas de permissão definidas em recursos "instance1" ou "instance2" e também especificar o usuário "amy".

      • roles:roles/compute.admin para encontrar vinculações de políticas de permissão que especifiquem o papel de Administrador do Compute.

      • memberTypes:user para encontrar vinculações de políticas de permissão que contenham o tipo de principal "user".

    • SCOPE: um escopo pode ser um projeto, uma pasta ou uma organização. A pesquisa é limitada ao IAM de permissão neste escopo. O autor da chamada precisa receber um papel que contém o cloudasset.assets.searchAllIamPolicies no escopo selecionado. Se não for especificado, a propriedade do projeto configurado 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:

        1. Acesse a página Painel no console do Google Cloud.

          Ir para o painel

        2. Clique na caixa do seletor na barra de menus.
        3. Selecione sua organização na caixa Selecionar de e pesquise o nome do projeto.
        4. Clique no nome do projeto para alternar para ele. O número do projeto é mostrado 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:

        1. Acesse o console do Google Cloud.

          Acessar o console do Google Cloud

        2. Clique na caixa do seletor na barra de menus.
        3. Clique na caixa Selecionar de e escolha sua organização.
        4. Pesquise o nome da sua pasta. O ID da pasta é mostrado ao lado do nome dela.

        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 o A opção --format para mais informações sobre as pastas encontradas.

        Para conferir o ID de uma pasta em 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 de organização do Google Cloud, siga estas etapas:

        1. Acesse o console do Google Cloud.

          Acesse o console do Google Cloud.

        2. Clique na caixa do seletor na barra de menus.
        3. Clique na caixa Selecionar de e escolha a organização.
        4. Selecione a guia Todos. O ID da organização aparece ao lado do nome dela.

        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

Como criar uma consulta

Veja 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 exemplos de consultas 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íticas do IAM oferecem suporte a cinco tipos de principais:

  1. Contas do Google, como user:user@gmail.com

  2. Grupos do Google, como group:devs@googlegroups.com

  3. Domínios do Cloud Identity e do G Suite, como domain:google.com

  4. Contas de serviço, como serviceAccount:my-other-app@appspot.gserviceaccount.com

  5. Identificadores especiais, como allUsers e allAuthenticatedUsers

Você pode limitar a consulta para permitir políticas relacionadas a um usuário específico usando esta 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 corresponde apenas 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 outro tipo de principal. 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 de política de permissão do IAM que especificam o usuário Amy:

    policy:amy
    
  • Encontre todas as vinculações de política de permissão do IAM que especificam o domínio mydomain.com:

    policy:mydomain.com
    
  • Encontrar todas as vinculações de política de permissão do IAM que especificam o usuário Amy e John:

    policy:(amy john)
    
  • Encontre todas as vinculações de política de permissão do IAM que especificam o usuário Amy ou John:

    policy:(amy OR john)
    
  • Encontre todas as vinculações de política de permissão do IAM na sua organização que contêm amy@mycompany.com:

    policy:amy@mycompany.com
    
  • Encontre todas as vinculações de política de permissão do IAM na sua organização que contêm 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 a admins grupo:

    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
    
  • Encontrar todas as vinculações de política de permissão do IAM que atribuem papéis a todos 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 para o domínio mycompany.com:

    policy:(amy@mycompany.com OR "domain:mycompany.com")
    

Papel

As vinculações de política 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/.

  1. 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).

  2. Papéis predefinidos: o IAM oferece papéis predefinidos adicionais que dão acesso granular a recursos diferentes. Confira todos os papéis predefinidos.

  3. Papéis personalizados: papéis do IAM definidos pelo usuário que contêm uma lista selecionada de permissões.

É possível limitar sua consulta para permitir políticas relacionadas a um papel específico usando a propriedade 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 um papel 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 de política de permissão do IAM que especificam o papel owner.

    policy:roles/owner
    roles:roles/owner
    roles=roles/owner
    
  • Encontrar todas as vinculações de política de permissão do IAM que atribuem amy@mycompany.com o papel de proprietário:

    policy:(roles/owner amy@mycompany.com)
    
  • Encontre todas as vinculações de política de permissão do IAM que atribuem o compute.admin aos principais com a palavra john no endereço de e-mail:

    policy:(roles/compute.admin john)
    
  • Encontre todas as vinculações de política de permissão do IAM que concedem o papel viewer a usuários que têm "swe" ou "sde" como prefixo.

    policy:(roles/viewer (swe* OR sde*))
    

Condições do IAM

As vinculações de políticas de permissão do IAM podem conter um objeto condition, que permite definir e aplicar o controle de acesso condicional e baseado em atributos para recursos do Google Cloud. Consulte a Visão geral das condições do IAM. para mais informações.

É possível limitar sua 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, em que title/description contém a palavra "myCondition":

    policy:myCondition
    
  • Encontre todas as vinculações de política de permissão do IAM que especificam uma condição, em que expressão 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 Referência de permissões do IAM para mais detalhes. É possível limitar sua consulta para permitir políticas que contenham uma determinada permissão. Uma expressão de consulta tem estes formatos:

  • Correspondência exata: policy.role.permissions=QUERY
  • Correspondência parcial: policy.role.permissions:QUERY
Exemplos: consulta por permissões
  • Encontre todas as vinculações de política de permissão do IAM que contêm a permissão compute.instances.create:

    policy.role.permissions:compute.instances.create
    policy.role.permissions=compute.instances.create
    
  • Encontre todas as vinculações de política de permissão do IAM que contenham o compute.instances permissões relacionadas:

    policy.role.permissions:compute.instances
    
  • Encontrar todas as vinculações de política de permissão do IAM que contêm permissões cloudasset.assets.export... (por exemplo, cloudasset.assets.exportAssets) e cloudasset.assets.exportIamPolicyAnalysis):

    policy.role.permissions:cloudasset.assets.export*
    
  • Encontre todas as vinculações de política de permissão do IAM que concedem permissões a alguém altere as políticas de permissão do IAM:

    policy.role.permissions:setIamPolicy
    
  • Encontre todas as vinculações de política de permissão do IAM com um papel que contenha Permissões compute.instances.create e compute.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 contêm a permissão compute.instances.create e especifique o usuário amy:

    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, é possível especificar um nome completo de recurso. para pesquisar apenas as políticas de permissão definidas diretamente no recurso. Você também pode especificar um projeto, uma pasta ou uma organização para pesquisar apenas as políticas de permissão que são definidos nos recursos localizados em um determinado projeto/pasta/organização. Uma expressão de consulta tem estes formatos:

  • 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 uma recurso com o 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 definidas diretamente em recursos em que o nome completo do recurso contém a palavra myproject:

    resource:myproject
    
  • Encontre todas as vinculações de política de permissão do IAM definidas diretamente em recursos em que o nome completo do recurso contém uma palavra com o prefixo myproj:

    resource:myproj*
    
  • Encontrar todas as vinculações de política de permissão do IAM 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 nos myproject ou myfolder:

    resource:(myproject OR myfolder)
    
  • Encontre todas as vinculações de política de permissão do IAM definidas em cloudresourcemanager recursos e atribuir o papel de proprietário a gmail.com usuários:

    resource:cloudresourcemanager policy:(roles/owner gmail.com)
    
  • Encontre todas as vinculações de política de permissão do IAM definidas em recursos com project tem o número 123:

    project:123
    
  • Encontre todas as vinculações de política de permissão do IAM definidas nos recursos contidos em folder com o número 123:

    folders:123
    
  • Encontre todas as vinculações de política de permissão do IAM definidas nos recursos em que organization tem o número 123:

    organization:123
    

Consultar políticas de permissão de 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íticas ou de recursos) correspondente à consulta.

Exemplos: consulta por texto livre

  • Encontre todas as vinculações de políticas de permissão do IAM no scope com campos de metadados (por exemplo, vinculações de políticas ou campos de recursos) que contêm Important como uma palavra:

    Important
    
  • Encontre todas as vinculações de política de permissão do IAM no scope com metadados (por exemplo, vinculações de política ou campos de recurso) contêm import como um prefixo de qualquer palavra:

    import*