Permissões do IAM para o Console do Google Cloud

Nesta página, falaremos sobre as permissões do gerenciamento de identidade e acesso (IAM, na sigla em inglês) necessárias para executar várias ações nos buckets e objetos do Cloud Storage ao usar o Console do Cloud. As permissões do IAM são agrupadas para criar papéis, que você atribui a usuários e grupos.

Permissões comuns necessárias para usar o Console do Cloud

Algumas permissões são necessárias para usar o Console do Cloud:

  • Todas as ações que envolvem buckets exigem as permissões resourcemanager.projects.get e storage.buckets.list no nível do projeto.

    Com essas permissões, é possível acessar a página no navegador do Console em que você cria, visualiza e atualiza buckets.

  • Geralmente, as ações que envolvem objetos exigem a permissão storage.objects.list no nível do projeto ou do bucket.

    Essa permissão não é necessária se você acessar apenas as páginas de detalhes de objetos específicos e nunca precisar acessar a lista geral de objetos em um bucket.

  • Todas as ações que incluem um projeto de faturamento na solicitação exigem a permissão serviceusage.services.use para o projeto especificado.

    Essa permissão garante que você tenha autorização para faturar o projeto especificado. Você inclui um projeto de faturamento, por exemplo, ao acessar um bucket com pagamentos do solicitante ativado.

Permissões obrigatórias para ações específicas

Ação Permissões de IAM obrigatórias (além das listadas acima)
Criar um bucket storage.buckets.create
Listar ou filtrar buckets Nenhuma permissão extra
Acessar a guia "Visão geral" de um bucket storage.buckets.get
Visualizar ou editar a configuração do site de um bucket (se ativado) storage.buckets.get
storage.buckets.update
Alterar rótulos de bucket, classes de armazenamento padrão ou retenções baseadas em evento padrão storage.buckets.get
storage.buckets.update
Ativar o recurso Pagamentos do solicitante storage.buckets.get
storage.buckets.update
Desativar o recurso Pagamentos do solicitante storage.buckets.get
storage.buckets.update
resourcemanager.projects.createBillingAssignment3
Definir ou atualizar políticas do ciclo de vida do objeto storage.buckets.get
storage.buckets.update
Visualizar políticas do ciclo de vida do objeto storage.buckets.get
Definir ou remover a chave padrão do Cloud Key Management Service de um intervalo storage.buckets.get
storage.buckets.update
Visualizar a chave padrão do Cloud Key Management Service de um intervalo storage.buckets.get
Definir, remover ou bloquear a política de retenção de um intervalo storage.buckets.get
storage.buckets.update
Ver a política de retenção de um intervalo storage.buckets.get
Definir ou remover o acesso uniforme no nível do bucket de um bucket storage.buckets.get
storage.buckets.update
Ver o status de acesso uniforme no nível do bucket de um bucket storage.buckets.get
Alterar permissões do bucket storage.buckets.get
storage.buckets.getIamPolicy
storage.buckets.setIamPolicy
storage.buckets.update
Excluir um bucket vazio storage.buckets.delete
storage.objects.list
Excluir um bucket não vazio storage.buckets.delete
storage.objects.delete
storage.objects.list
Fazer upload de um objeto storage.objects.create
Ver a página de detalhes de um objeto5 storage.objects.get
Fazer o download de um objeto5 storage.objects.get
Listar objetos em um bucket Nenhuma permissão extra
Determinar se um objeto é acessível publicamente5 storage.buckets.getIamPolicy
storage.objects.getIamPolicy4
Renomear um objeto storage.objects.create
storage.objects.delete
storage.objects.get
storage.objects.getIamPolicy4
storage.objects.setIamPolicy4
Copiar um objeto storage.objects.create (para o bucket de destino)
storage.objects.delete1 (para o bucket de destino)
storage.objects.get (para o objeto de origem)
storage.objects.getIamPolicy2,4 (para o objeto de origem)
storage.objects.setIamPolicy2,4 (para o intervalo de destino)
Mover um objeto storage.objects.create (para o bucket de destino)
storage.objects.delete1 (para o bucket de destino)
storage.objects.delete (para o bucket de origem)
storage.objects.get (para o objeto de origem)
storage.objects.getIamPolicy2,4 (para o objeto de origem)
storage.objects.setIamPolicy2,4 (para o bucket de destino)
Ver as permissões de acesso de um objeto5,6 storage.objects.get
storage.objects.getIamPolicy
Editar as permissões de acesso de um objeto5,6 storage.objects.get
storage.objects.getIamPolicy
storage.objects.setIamPolicy
storage.objects.update
Editar metadados de um objeto storage.objects.get
storage.objects.update
Adicionar ou remover uma retenção em um objeto storage.objects.get
storage.objects.update
Excluir um objeto5 storage.objects.delete
Ver as chaves HMAC de um projeto resourcemanager.projects.get
storage.hmacKeys.list
Criar uma chave HMAC para uma conta de serviço resourcemanager.projects.get
storage.hmacKeys.list
storage.hmacKeys.create
Desativar ou reativar uma chave HMAC de uma conta de serviço resourcemanager.projects.get
storage.hmacKeys.list
storage.hmacKeys.update
Excluir uma chave HMAC de uma conta de serviço resourcemanager.projects.get
storage.hmacKeys.list
storage.hmacKeys.delete

1Essa permissão só é obrigatória quando o objeto copiado/movido tem o mesmo nome de um objeto que já está presente no bucket.

2Essa permissão é obrigatória somente quando são mantidas as permissões atualmente aplicadas ao objeto de origem.

3Essa permissão é obrigatória somente quando um projeto de faturamento não é incluído na solicitação. Consulte Requisitos de uso e acesso dos pagamentos do solicitante para mais informações.

4 Esta permissão não se aplica a buckets com acesso uniforme no nível do bucket ativado.

5Essa ação não requer storage.objects.list quando realizada na página de detalhes do objeto em questão.

6 Esta ação não se aplica a buckets com acesso uniforme no nível do intervalo ativado.

A seguir