Permissões de IAM para métodos JSON

Nesta tabela, descrevemos a lista de permissões de Gerenciamento de identidade e acesso (IAM) obrigatórias para executar cada método JSON do Cloud Storage em um recurso específico. As permissões do IAM são agrupadas para criar papéis. Você pode conceder papéis a usuários e grupos.

Para outros métodos que só se aplicam a buckets com acesso uniforme no nível do bucket desativado, consulte a tabela de métodos da ACL.

Recurso Método Permissões de IAM obrigatórias1
Buckets delete storage.buckets.delete
Buckets get storage.buckets.get
storage.buckets.getIamPolicy2
Buckets getIamPolicy storage.buckets.getIamPolicy
Buckets insert storage.buckets.create
storage.buckets.enableObjectRetention3
Buckets list storage.buckets.list
storage.buckets.getIamPolicy2
Buckets listChannels storage.buckets.get
Buckets lockRetentionPolicy storage.buckets.update
Buckets patch storage.buckets.update
storage.buckets.getIamPolicy4
storage.buckets.setIamPolicy5
Buckets setIamPolicy storage.buckets.setIamPolicy
Buckets testIamPermissions Nenhum
Buckets update storage.buckets.update
storage.buckets.getIamPolicy4
storage.buckets.setIamPolicy5
Channels stop Nenhum
ManagedFolders delete storage.managedfolders.delete
ManagedFolders get storage.managedfolders.get
ManagedFolders getIamPolicy storage.managedfolders.getIamPolicy
ManagedFolders insert storage.managedfolders.create
ManagedFolders list storage.managedfolders.list
ManagedFolders update storage.managedfolders.update
ManagedFolders setIamPolicy storage.managedfolders.setIamPolicy
Notifications delete storage.buckets.update
Notifications get storage.buckets.get
Notifications insert storage.buckets.update
Notifications list storage.buckets.get
Objects compose storage.objects.get
storage.objects.create
storage.objects.delete7
storage.objects.setRetention8
Objects copy storage.objects.get (para o bucket de origem)
storage.objects.create (para o bucket de destino)
storage.objects.delete (para o bucket de destino)7
storage.objects.setRetention (para o bucket de destino) 8.
Objects delete storage.objects.delete
Objects get storage.objects.get
storage.objects.getIamPolicy2,6
Objects insert storage.objects.create
storage.objects.delete7
storage.objects.setRetention8
Objects list storage.objects.list
storage.objects.getIamPolicy2,6
Objects patch storage.objects.update
storage.objects.setRetention8
storage.objects.overrideUnlockedRetention9
storage.objects.getIamPolicy4,6
storage.objects.setIamPolicy5,6
Objects rewrite storage.objects.get (para o bucket de origem)
storage.objects.create (para o bucket de destino)
storage.objects.delete (para o bucket de destino)7
storage.objects.setRetention (para o bucket de destino) 8.
Objects update storage.objects.update
storage.objects.setRetention8
storage.objects.overrideUnlockedRetention9
storage.objects.getIamPolicy4,6
storage.objects.setIamPolicy5,6
Objects watchAll storage.buckets.update
Projects.hmacKeys create storage.hmacKeys.create
Projects.hmacKeys delete storage.hmacKeys.delete
Projects.hmacKeys get storage.hmacKeys.get
Projects.hmacKeys list storage.hmacKeys.list
Projects.hmacKeys update storage.hmacKeys.update
Projects.serviceAccount get resourceManager.projects.get
ReportConfigs delete storageinsights.reportConfigs.delete
ReportConfigs get storageinsights.reportConfigs.get
ReportConfigs list storageinsights.reportConfigs.list
ReportConfigs insert storageinsights.reportConfigs.create
ReportConfigs update storageinsights.reportConfigs.update
ReportDetails get storageinsights.reportDetails.get
ReportDetails list storageinsights.reportDetails.list

1 Se você usar o parâmetro userProject ou o cabeçalho x-goog-user-project na solicitação, será necessário ter a permissão serviceusage.services.use para o ID do projeto especificado, além das permissões normais de IAM necessárias para fazer a solicitação.

2 Essa permissão será obrigatória somente se você quiser incluir políticas de IAM ou ACLs como parte de uma projeção full. Se você não tiver essa permissão e solicitar uma projeção full, receberá apenas uma projeção parcial.

3 Essa permissão é obrigatória somente quando a solicitação inclui o parâmetro de consulta enableObjectRetention.

3 Essa permissão será obrigatória somente se você quiser incluir ACLs como parte da resposta.

5 Essa permissão será obrigatória se você quiser incluir ACLs ou alterações na configuração de prevenção de acesso público como parte da solicitação.

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

4Essa permissão será obrigatória somente se o objeto inserido tiver o mesmo nome de um objeto atual no bucket.

8 Essa permissão é necessária quando o corpo da solicitação inclui a propriedade retention ou ao fazer uma solicitação UPDATE para um que tem uma configuração de retenção existente.

9 Essa permissão é obrigatória somente quando a solicitação inclui o parâmetro de consulta overrideUnlockedRetention=true.

Métodos relacionados à ACL

A tabela a seguir lista as permissões de IAM necessárias para executar métodos JSON que se aplicam especificamente ao gerenciamento de ACLs. Esses métodos se aplicam somente a buckets com o acesso uniforme no nível do bucket desativado.

Recurso Método Permissões do IAM necessárias1
BucketAccessControls delete storage.buckets.get
storage.buckets.getIamPolicy
storage.buckets.setIamPolicy
storage.buckets.update
BucketAccessControls get storage.buckets.get
storage.buckets.getIamPolicy
BucketAccessControls insert storage.buckets.get
storage.buckets.getIamPolicy
storage.buckets.setIamPolicy
storage.buckets.update
BucketAccessControls list storage.buckets.get
storage.buckets.getIamPolicy
BucketAccessControls patch storage.buckets.get
storage.buckets.getIamPolicy
storage.buckets.setIamPolicy
storage.buckets.update
BucketAccessControls update storage.buckets.get
storage.buckets.getIamPolicy
storage.buckets.setIamPolicy
storage.buckets.update
DefaultObjectAccessControls delete storage.buckets.get
storage.buckets.getIamPolicy
storage.buckets.setIamPolicy
storage.buckets.update
DefaultObjectAccessControls get storage.buckets.get
storage.buckets.getIamPolicy
DefaultObjectAccessControls insert storage.buckets.get
storage.buckets.getIamPolicy
storage.buckets.setIamPolicy
storage.buckets.update
DefaultObjectAccessControls list storage.buckets.get
storage.buckets.getIamPolicy
DefaultObjectAccessControls patch storage.buckets.get
storage.buckets.getIamPolicy
storage.buckets.setIamPolicy
storage.buckets.update
DefaultObjectAccessControls update storage.buckets.get
storage.buckets.getIamPolicy
storage.buckets.setIamPolicy
storage.buckets.update
ObjectAccessControls delete storage.objects.get
storage.objects.getIamPolicy
storage.objects.setIamPolicy
storage.objects.update
ObjectAccessControls get storage.objects.get
storage.objects.getIamPolicy
ObjectAccessControls insert storage.objects.get
storage.objects.getIamPolicy
storage.objects.setIamPolicy
storage.objects.update
ObjectAccessControls list storage.objects.get
storage.objects.getIamPolicy
ObjectAccessControls patch storage.objects.get
storage.objects.getIamPolicy
storage.objects.setIamPolicy
storage.objects.update
ObjectAccessControls update storage.objects.get
storage.objects.getIamPolicy
storage.objects.setIamPolicy
storage.objects.update

1 Se você usar o parâmetro userProject ou o cabeçalho x-goog-user-project na solicitação, será necessário ter a permissão serviceusage.services.use para o ID do projeto especificado, além das permissões normais de IAM necessárias para fazer a solicitação.

A seguir