Esta página foi traduzida pela API Cloud Translation.
Switch to English

Como pesquisar amostras de políticas do IAM

Esta página contém consultas de amostra para vários casos de uso de pesquisa de política de IAM.

Caso de uso: listar políticas de IAM na sua organização e formatar a saída como tuplas (RESOURCE, ROLE, MEMBER)

  gcloud asset search-all-iam-policies \
  --scope=organizations/123456 \
  --page-size=50 \
  --flatten='policy.bindings[].members[]' \
  --format='table(resource, policy.bindings.role, policy.bindings.members)'

Altere --scope para projects/12345678 ou folders/1234567 para pesquisar em um projeto ou pasta em vez de uma organização.

É possível adicionar restrições --query para receber resultados de pesquisa de recursos mais específicos.

Remova os --flatten e --format se não quiser formatar os resultados.

Use csv em vez de table para formatar os resultados em um CSV.

Você pode adicionar --limit para receber apenas um subconjunto dos resultados da pesquisa. Sem essa sinalização, ela passará automaticamente por todos os resultados da pesquisa.

Caso de uso: listar políticas de IAM no projeto

  gcloud asset search-all-iam-policies \
  --scope=projects/12345678

Altere --scope para organizations/123456 ou folders/1234567 para listar todas as políticas do IAM na sua organização ou pasta, em vez de um projeto.

Você pode adicionar restrições --query para ver resultados de pesquisa de política mais específicos.

Caso de uso: listar políticas de IAM definidas em recursos de organização/pasta/projeto na sua organização

  gcloud asset search-all-iam-policies \
  --scope=organizations/123456  \
  --query='resource:cloudresourcemanager'

Altere --query para resource:(cloudresourcemanager projects) para ver somente os projetos.

Caso de uso: listar leitores de um projeto

  gcloud asset search-all-iam-policies \
  --scope=projects/12345678 \
  --query='resource:cloudresourcemanager policy:roles/viewer' \
  --page-size=50 \
  --flatten='policy.bindings[].members[]' \
  --format='table(policy.bindings.members)'

Caso de uso: listar projetos em que um usuário tem o papel de proprietário

  gcloud asset search-all-iam-policies \
  --scope=organizations/123456 \
  --query='resource:(cloudresourcemanager projects) policy:(roles/owner user@mycompany.com)' \
  --page-size=50 \
  --format='table(resource)'

Caso de uso: listar os papéis de um usuário em um projeto

  gcloud asset search-all-iam-policies \
  --scope=projects/12345678 \
  --query='resource:(cloudresourcemanager projects) policy:user@mycompany.com' \
  --page-size=50 \
  --flatten='policy.bindings[]' \
  --format='table(policy.bindings.role)'

Caso de uso: listar permissões de um usuário em um projeto.

  gcloud asset search-all-iam-policies \
  --scope=projects/12345678 \
  --query='resource:cloudresourcemanager policy:user@mycompany.com policy.role.permissions:""' \
  --page-size=50 \
  --format='default(explanation.matchedPermissions)'

Caso de uso: listar usuários que podem acessar o bucket bigstore

  gcloud asset search-all-iam-policies \
  --scope=projects/12345678 \
  --query='resource:cloudresourcemanager policy.role.permissions:storage.buckets' \
  --page-size=50 \
  --flatten='policy.bindings[].members[]' \
  --format='table(policy.bindings.members)'

Caso de uso: listar contas de serviço que têm o papel de proprietário para detectar configurações de políticas arriscadas

  gcloud asset search-all-iam-policies \
  --scope=organizations/123456 \
  --query='policy:(roles/owner serviceAccount)' \
  --page-size=50 \
  --flatten='policy.bindings[].members[]' \
  --format='table(resource.segment(3):label=RESOURCE_TYPE, resource.basename():label=RESOURCE, policy.bindings.members)' \
  | grep serviceAccount
.

Caso de uso: listar recursos que podem ser acessados pelos usuários do Gmail

  gcloud asset search-all-iam-policies \
  --scope=organizations/123456 \
  --query='policy:gmail.com' \
  --page-size=50 \
  --flatten='policy.bindings[].members[]' \
  --format='csv(resource, policy.bindings.role, policy.bindings.members)' \
  | grep @gmail.com
.

Caso de uso: listar recursos que têm papéis concedidos ao domínio inteiro

  gcloud asset search-all-iam-policies \
  --scope=organizations/123456 \
  --query='policy:"domain:bigwhite.joonix.net"' \
  --page-size=50 \
  --flatten='policy.bindings[]' \
  --format='table(resource, policy.bindings.role)'

Caso de uso: listar recursos que têm papéis concedidos ao público

  gcloud asset search-all-iam-policies \
  --scope=organizations/123456 \
  --query='policy:(allUsers OR allAuthenticatedUsers)' \
  --page-size=50 \
  --format='table(resource)'

Caso de uso: listar usuários/grupos que podem alterar as políticas de IAM na organização/pasta/projeto

  gcloud asset search-all-iam-policies \
  --scope=organizations/123456 \
  --query='policy.role.permissions:(resourcemanager.organizations.setIamPolicy OR resourcemanager.folders.setIamPolicy OR resourcemanager.projects.setIamPolicy)' \
  --page-size=50 \
  --format='json(resource, policy.bindings, explanation.matchedPermissions)'