Autorizações de IAM para métodos JSON

A tabela seguinte apresenta as autorizações da gestão de identidade e acesso (IAM) necessárias para executar cada método JSON do Cloud Storage num determinado recurso. As autorizações de IAM estão agrupadas para criar funções. Concede funções a utilizadores e grupos.

Para métodos adicionais que se aplicam apenas a contentores com o acesso uniforme ao nível do contentor desativado, consulte a tabela de métodos de LCA.

Recurso Método Autorizações de IAM necessá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.get
storage.buckets.getIamPolicy2
storage.buckets.getIpFilter13
storage.anywhereCaches.get18
Buckets getIamPolicy storage.buckets.getIamPolicy
Buckets insert storage.buckets.create
storage.buckets.enableObjectRetention3
storage.buckets.setIpFilter14
Buckets list storage.buckets.list
storage.buckets.getIamPolicy2
storage.buckets.getIpFilter13
storage.anywhereCaches.list
Buckets listChannels storage.buckets.get
Buckets lockRetentionPolicy storage.buckets.update
Buckets patch storage.buckets.update
storage.buckets.getIamPolicy4
storage.buckets.setIamPolicy5
storage.buckets.setIpFilter14
storage.buckets.getIpFilter13
Buckets relocate storage.buckets.relocate
Buckets setIamPolicy storage.buckets.setIamPolicy
Buckets testIamPermissions Nenhum
Buckets update storage.buckets.update
storage.buckets.getIamPolicy4
storage.buckets.setIamPolicy5
storage.buckets.setIpFilter14
storage.buckets.getIpFilter13
storage.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.rename (para a pasta de origem)
storage.folders.create (para a pasta de destino)
Folders delete storage.folders.delete
IntelligenceConfig getIntelligenceConfig storage.intelligenceConfigs.get
IntelligenceConfig updateIntelligenceConfig storage.intelligenceConfigs.update
Jobs create storagebatchoperations.jobs.create
Jobs get storagebatchoperations.jobs.get
storagebatchoperations.operations.get
Jobs list storagebatchoperations.jobs.list
storagebatchoperations.operations.list
Jobs cancel storagebatchoperations.jobs.cancel
storagebatchoperations.operations.cancel
Jobs delete storagebatchoperations.jobs.delete
ManagedFolders delete storage.managedfolders.delete
storage.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.restore
storage.objects.create
storage.objects.delete11
storage.objects.restore
storage.objects.setIamPolicy6,12
Objects compose storage.objects.get
storage.objects.create
storage.objects.delete7
storage.objects.getIamPolicy2,6
storage.objects.setRetention8
Objects copy storage.objects.get (para o contentor de origem)
storage.objects.create (para o contentor de destino)
storage.objects.delete (para o contentor de destino)7
storage.objects.setRetention (para o contentor 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 move storage.objects.move15 (para o objeto de origem)
storage.objects.delete15 (para o objeto de origem)
storage.objects.get15 (para o objeto de origem)
storage.objects.create (para o objeto de destino)
storage.objects.delete16 (para o objeto de destino)
storage.folders.create17 (para o objeto de destino)
Objects patch storage.objects.update
storage.objects.setRetention8
storage.objects.overrideUnlockedRetention9
storage.objects.getIamPolicy4,6
storage.objects.setIamPolicy5,6
Objects restore storage.objects.create
storage.objects.delete7
storage.objects.restore
storage.objects.getIamPolicy2,6
storage.objects.setIamPolicy6,12
Objects rewrite storage.objects.get (para o contentor de origem)
storage.objects.create (para o contentor de destino)
storage.objects.delete (para o contentor de destino)7
storage.objects.setRetention (para o contentor 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

1 Se usar o parâmetro userProject ou o cabeçalho x-goog-user-project no seu pedido, tem de ter a autorização serviceusage.services.use para o ID do projeto que especificar, além das autorizações de IAM normais necessárias para fazer o pedido.

2 Esta autorização só é necessária se quiser incluir ACLs ou políticas de IAM como parte de uma projeção full. Se não tiver esta autorização e pedir uma projeção full, recebe apenas uma projeção parcial.

3 Esta autorização só é necessária quando o pedido inclui o parâmetro de consulta enableObjectRetention.

4 Esta autorização só é necessária se quiser incluir LCAs como parte da resposta.

5 Esta autorização é necessária se quiser incluir LCAs ou alterações à definição de prevenção de acesso público como parte do pedido.

6 Esta autorização não se aplica a contentores com o acesso uniforme ao nível do contentor ativado.

7 Esta autorização só é necessária se o pedido fizer com que um objeto com o mesmo nome seja substituído.

8 Esta autorização é necessária quando o corpo do pedido inclui a propriedade retention ou quando faz um pedido UPDATE de um objeto que tem uma configuração de retenção existente.

9 Esta autorização só é necessária quando o pedido inclui o parâmetro de consulta overrideUnlockedRetention=true.

10 Esta autorização só é necessária quando o pedido inclui o parâmetro de consulta allowNonEmpty=true.

11 Esta autorização só é necessária quando o pedido inclui o parâmetro de consulta allowOverwrite=true e o pedido faz com que um objeto com o mesmo nome seja substituído.

12 Esta autorização só é necessária quando o pedido inclui o parâmetro de consulta copySourceAcl=true.

13 Esta autorização só é necessária se quiser incluir regras de filtragem de IP de contentores como parte do pedido Buckets: get. Se não tiver esta autorização, recebe apenas uma projeção parcial.

14 Esta autorização só é necessária se quiser criar, listar, eliminar e atualizar regras de filtragem de IP de contentores.

15 Para mover um objeto num contentor com o espaço de nomes hierárquico ativado, precisa das autorizações storage.objects.delete e storage.objects.get ou da autorização storage.objects.move se quiser movê-lo sem conceder acesso de leitura ou eliminação ao objeto.

16 Esta autorização só é necessária se quiser substituir um objeto.

17 Esta autorização só é necessária se quiser criar automaticamente as pastas superiores em falta.

18 Esta autorização só é necessária se quiser devolver caches criadas com a Anywhere Cache.

Métodos relacionados com a LCA

A tabela seguinte lista as autorizações de IAM necessárias para executar métodos JSON que se aplicam especificamente à gestão de ACLs. Estes métodos aplicam-se apenas a contentores que tenham o acesso uniforme ao nível do contentor desativado.

Recurso Método Autorizações de 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 usar o parâmetro userProject ou o cabeçalho x-goog-user-project no seu pedido, tem de ter a autorização serviceusage.services.use para o ID do projeto que especificar, além das autorizações de IAM normais necessárias para fazer o pedido.

O que se segue?