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 | 
|---|---|---|
AnywhereCache | 
      create | 
      storage.anywhereCaches.create | 
    
AnywhereCache | 
      disable | 
      storage.anywhereCaches.disable | 
    
AnywhereCache | 
      get | 
      storage.anywhereCaches.get | 
    
AnywhereCache | 
      list | 
      storage.anywhereCaches.list | 
    
AnywhereCache | 
      pause | 
      storage.anywhereCaches.pause | 
    
AnywhereCache | 
      resume | 
      storage.anywhereCaches.resume | 
    
AnywhereCache | 
      update | 
      storage.anywhereCaches.update | 
    
Buckets | 
      delete | 
      storage.buckets.delete | 
    
Buckets | 
      get | 
      storage.buckets.getstorage.buckets.getIamPolicy2storage.buckets.getIpFilter13storage.anywhereCaches.get18 | 
    
Buckets | 
      getIamPolicy | 
      storage.buckets.getIamPolicy | 
    
Buckets | 
      insert | 
      storage.buckets.createstorage.buckets.enableObjectRetention3storage.buckets.setIpFilter14 | 
    
Buckets | 
      list | 
      storage.buckets.liststorage.buckets.getIamPolicy2storage.buckets.getIpFilter13storage.anywhereCaches.list | 
    
Buckets | 
      listChannels | 
      storage.buckets.get | 
    
Buckets | 
      lockRetentionPolicy | 
      storage.buckets.update | 
    
Buckets | 
      patch | 
      storage.buckets.updatestorage.buckets.getIamPolicy4storage.buckets.setIamPolicy5storage.buckets.setIpFilter14storage.buckets.getIpFilter13 | 
    
Buckets | 
      relocate | 
      storage.buckets.relocate | 
    
Buckets | 
      setIamPolicy | 
      storage.buckets.setIamPolicy | 
    
Buckets | 
      testIamPermissions | 
      Nenhum | 
Buckets | 
      update | 
      storage.buckets.updatestorage.buckets.getIamPolicy4storage.buckets.setIamPolicy5storage.buckets.setIpFilter14storage.buckets.getIpFilter13storage.anywhereCaches.update | 
    
DatasetConfigs | 
      delete | 
      storageinsights.datasetConfigs.delete | 
    
DatasetConfigs | 
      get | 
      storageinsights.datasetConfigs.get | 
    
DatasetConfigs | 
      insert | 
      storageinsights.datasetConfigs.create | 
    
DatasetConfigs | 
      list | 
      storageinsights.datasetConfigs.list | 
    
DatasetConfigs | 
      linkDataset | 
      storageinsights.datasetConfigs.linkDataset | 
    
DatasetConfigs | 
      unlinkDataset | 
      storageinsights.datasetConfigs.unlinkDataset | 
    
DatasetConfigs | 
      patch | 
      storageinsights.datasetConfigs.update | 
    
Channels | 
      stop | 
      Nenhum | 
Folders | 
      get | 
      storage.folders.get | 
    
Folders | 
      insert | 
      storage.folders.create | 
    
Folders | 
      list | 
      storage.folders.list | 
    
Folders | 
      rename | 
      storage.folders.renamestorage.folders.create | 
    
Folders | 
      delete | 
      storage.folders.delete | 
    
IntelligenceConfig | 
      getIntelligenceConfig | 
      storage.intelligenceConfigs.get | 
    
IntelligenceConfig | 
      updateIntelligenceConfig | 
      storage.intelligenceConfigs.update | 
    
Jobs | 
      create | 
      storagebatchoperations.jobs.create | 
    
Jobs | 
      get | 
      storagebatchoperations.jobs.getstoragebatchoperations.operations.get | 
    
Jobs | 
      list | 
      storagebatchoperations.jobs.liststoragebatchoperations.operations.list | 
    
Jobs | 
      cancel | 
      storagebatchoperations.jobs.cancelstoragebatchoperations.operations.cancel | 
    
Jobs | 
      delete | 
      storagebatchoperations.jobs.delete | 
    
ManagedFolders | 
      delete | 
      storage.managedfolders.deletestorage.managedfolders.setIamPolicy10 | 
    
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 | 
      bulkRestore | 
      storage.buckets.restorestorage.objects.createstorage.objects.delete11storage.objects.restorestorage.objects.setIamPolicy6,12 | 
    
Objects | 
      compose | 
      storage.objects.getstorage.objects.createstorage.objects.delete7storage.objects.getIamPolicy2,6storage.objects.setRetention8storage.objects.createContext19 | 
    
Objects | 
      copy | 
      storage.objects.getstorage.objects.createstorage.objects.deletestorage.objects.setRetentionstorage.objects.createContext19 | 
    
Objects | 
      delete | 
      storage.objects.delete | 
    
Objects | 
      get | 
      storage.objects.getstorage.objects.getIamPolicy2,6 | 
    
Objects | 
      insert | 
      storage.objects.createstorage.objects.delete7storage.objects.setRetention8storage.objects.createContext19 | 
    
Objects | 
      list | 
      storage.objects.liststorage.objects.getIamPolicy2,6 | 
    
Objects | 
      move | 
      storage.objects.move15storage.objects.delete15storage.objects.get15storage.objects.createstorage.objects.delete16storage.folders.create17 | 
      
Objects | 
      patch | 
      storage.objects.updatestorage.objects.setRetention8storage.objects.overrideUnlockedRetention9storage.objects.getIamPolicy4,6storage.objects.setIamPolicy5,6storage.objects.createContext20storage.objects.updateContext21storage.objects.deleteContext22 | 
    
Objects | 
      restore | 
      storage.objects.createstorage.objects.delete7storage.objects.restorestorage.objects.getIamPolicy2,6storage.objects.setIamPolicy6,12 | 
    
Objects | 
      rewrite | 
      storage.objects.getstorage.objects.createstorage.objects.deletestorage.objects.setRetentionstorage.objects.createContext19 | 
    
Objects | 
      update | 
      storage.objects.updatestorage.objects.setRetention8storage.objects.overrideUnlockedRetention9storage.objects.getIamPolicy4,6storage.objects.setIamPolicy5,6storage.objects.createContext20storage.objects.updateContext21storage.objects.deleteContext22 | 
    
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.
4 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.
7 Essa permissão só será obrigatória se a solicitação fizer com que um objeto com o mesmo nome seja substituído.
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.
10 Essa permissão é obrigatória somente quando a solicitação inclui o parâmetro de consulta allowNonEmpty=true.
11 Essa permissão é obrigatória somente quando a solicitação inclui o parâmetro de consulta allowOverwrite=true e faz com que um objeto com o
mesmo nome seja substituído.
12 Essa permissão é obrigatória somente quando a solicitação inclui o parâmetro de consulta copySourceAcl=true.
13 Essa permissão é obrigatória somente se você quiser incluir regras de filtragem de IP do bucket como parte da solicitação Buckets: get. Se você não tiver essa permissão, vai receber apenas uma projeção parcial.
14 Essa permissão só é necessária se você quiser criar, listar, excluir e atualizar regras de filtragem de IP do bucket.
15 Para mover um objeto em um bucket com o namespace hierárquico ativado, você precisa das permissões storage.objects.delete e storage.objects.get ou da permissão storage.objects.move se quiser mover sem conceder acesso de leitura ou exclusão ao objeto.
16 Essa permissão é obrigatória somente se você quiser substituir um objeto.
17 Essa permissão só é necessária se você quiser criar automaticamente as pastas mãe ausentes.
18 Essa permissão só é necessária se você quiser retornar caches criados com o Anywhere Cache.
19 Essa permissão é obrigatória somente se a solicitação incluir uma propriedade destination.contexts.custom não vazia para compor um objeto ou uma propriedade contexts.custom não vazia para copiar, inserir ou reescrever um objeto.
20 Essa permissão só é obrigatória se você quiser adicionar contextos a um objeto.
21 Essa permissão só é obrigatória se você quiser atualizar contextos de um objeto.
22 Essa permissão só é necessária se você quiser excluir contextos de um objeto.
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 de IAM obrigatórias1 | 
|---|---|---|
BucketAccessControls | 
      delete | 
      storage.buckets.getstorage.buckets.getIamPolicystorage.buckets.setIamPolicystorage.buckets.update | 
    
BucketAccessControls | 
      get | 
      storage.buckets.getstorage.buckets.getIamPolicy | 
    
BucketAccessControls | 
      insert | 
      storage.buckets.getstorage.buckets.getIamPolicystorage.buckets.setIamPolicystorage.buckets.update | 
    
BucketAccessControls | 
      list | 
      storage.buckets.getstorage.buckets.getIamPolicy | 
    
BucketAccessControls | 
      patch | 
      storage.buckets.getstorage.buckets.getIamPolicystorage.buckets.setIamPolicystorage.buckets.update | 
    
BucketAccessControls | 
      update | 
      storage.buckets.getstorage.buckets.getIamPolicystorage.buckets.setIamPolicystorage.buckets.update | 
    
DefaultObjectAccessControls | 
      delete | 
      storage.buckets.getstorage.buckets.getIamPolicystorage.buckets.setIamPolicystorage.buckets.update | 
    
DefaultObjectAccessControls | 
      get | 
      storage.buckets.getstorage.buckets.getIamPolicy | 
    
DefaultObjectAccessControls | 
      insert | 
      storage.buckets.getstorage.buckets.getIamPolicystorage.buckets.setIamPolicystorage.buckets.update | 
    
DefaultObjectAccessControls | 
      list | 
      storage.buckets.getstorage.buckets.getIamPolicy | 
    
DefaultObjectAccessControls | 
      patch | 
      storage.buckets.getstorage.buckets.getIamPolicystorage.buckets.setIamPolicystorage.buckets.update | 
    
DefaultObjectAccessControls | 
      update | 
      storage.buckets.getstorage.buckets.getIamPolicystorage.buckets.setIamPolicystorage.buckets.update | 
    
ObjectAccessControls | 
      delete | 
      storage.objects.getstorage.objects.getIamPolicystorage.objects.setIamPolicystorage.objects.update | 
    
ObjectAccessControls | 
      get | 
      storage.objects.getstorage.objects.getIamPolicy | 
    
ObjectAccessControls | 
      insert | 
      storage.objects.getstorage.objects.getIamPolicystorage.objects.setIamPolicystorage.objects.update | 
    
ObjectAccessControls | 
      list | 
      storage.objects.getstorage.objects.getIamPolicy | 
    
ObjectAccessControls | 
      patch | 
      storage.objects.getstorage.objects.getIamPolicystorage.objects.setIamPolicystorage.objects.update | 
    
ObjectAccessControls | 
      update | 
      storage.objects.getstorage.objects.getIamPolicystorage.objects.setIamPolicystorage.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
Veja uma lista de papéis e as permissões que eles contêm em Papéis do IAM para o Cloud Storage.
Atribua papéis do IAM no nível do projeto e do bucket.