La tabella seguente elenca le autorizzazioni di Identity and Access Management (IAM) necessarie per eseguire ciascun metodo JSON di Cloud Storage su una determinata risorsa. Le autorizzazioni IAM sono raggruppate per creare ruoli. Puoi concedere ruoli a utenti e gruppi.
Per i metodi aggiuntivi che si applicano solo ai bucket con accesso uniforme a livello di bucket disabilitato, consulta la tabella dei metodi ACL.
Risorsa | Metodo | Autorizzazioni IAM richieste1 |
---|---|---|
Buckets |
delete |
storage.buckets.delete |
Buckets |
get |
storage.buckets.get storage.buckets.getIamPolicy 2 |
Buckets |
getIamPolicy |
storage.buckets.getIamPolicy |
Buckets |
insert |
storage.buckets.create storage.buckets.enableObjectRetention 3 |
Buckets |
list |
storage.buckets.list storage.buckets.getIamPolicy 2 |
Buckets |
listChannels |
storage.buckets.get |
Buckets |
lockRetentionPolicy |
storage.buckets.update |
Buckets |
patch |
storage.buckets.update storage.buckets.getIamPolicy 4storage.buckets.setIamPolicy 5 |
Buckets |
setIamPolicy |
storage.buckets.setIamPolicy |
Buckets |
testIamPermissions |
Nessuna |
Buckets |
update |
storage.buckets.update storage.buckets.getIamPolicy 4storage.buckets.setIamPolicy 5 |
Channels |
stop |
Nessuna |
Folders |
get |
storage.folders.get |
Folders |
insert |
storage.folders.create |
Folders |
list |
storage.folders.list |
Folders |
rename |
storage.folders.rename storage.folders.create |
Folders |
delete |
storage.folders.delete |
ManagedFolders |
delete |
storage.managedfolders.delete storage.managedfolders.setIamPolicy 10 |
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.delete 11storage.objects.restore storage.objects.setIamPolicy 6,12 |
Objects |
compose |
storage.objects.get storage.objects.create storage.objects.delete 7storage.objects.getIamPolicy 2,6storage.objects.setRetention 8 |
Objects |
copy |
storage.objects.get storage.objects.create storage.objects.delete storage.objects.setRetention |
Objects |
delete |
storage.objects.delete |
Objects |
get |
storage.objects.get storage.objects.getIamPolicy 2,6 |
Objects |
insert |
storage.objects.create storage.objects.delete 7storage.objects.setRetention 8 |
Objects |
list |
storage.objects.list storage.objects.getIamPolicy 2,6 |
Objects |
patch |
storage.objects.update storage.objects.setRetention 8storage.objects.overrideUnlockedRetention 9storage.objects.getIamPolicy 4,6storage.objects.setIamPolicy 5,6 |
Objects |
restore |
storage.objects.create storage.objects.delete 7storage.objects.restore storage.objects.getIamPolicy 2,6storage.objects.setIamPolicy 6,12 |
Objects |
rewrite |
storage.objects.get storage.objects.create storage.objects.delete storage.objects.setRetention |
Objects |
update |
storage.objects.update storage.objects.setRetention 8storage.objects.overrideUnlockedRetention 9storage.objects.getIamPolicy 4,6storage.objects.setIamPolicy 5,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 nella richiesta utilizzi il parametro userProject
o l'intestazione x-goog-user-project
, devi disporre dell'autorizzazione serviceusage.services.use
per l'ID progetto specificato, oltre alle normali autorizzazioni IAM necessarie per effettuare la richiesta.
2 Questa autorizzazione è richiesta solo se vuoi includere ACL o criteri IAM in una proiezione full
. Se non disponi di questa autorizzazione e richiedi una proiezione full
, ricevi solo una proiezione parziale.
3 Questa autorizzazione è necessaria solo se la richiesta include il
parametro di query enableObjectRetention
.
4 Questa autorizzazione è necessaria solo se vuoi includere ACL nella risposta.
5 Questa autorizzazione è necessaria se vuoi includere nella richiesta ACL o modifiche all'impostazione Prevenzione dell'accesso pubblico.
6 Questa autorizzazione non si applica ai bucket in cui è abilitato accesso uniforme a livello di bucket.
7 Questa autorizzazione è necessaria solo se la richiesta causa la sovrascrittura di un oggetto con lo stesso nome.
8 Questa autorizzazione è necessaria quando il corpo della richiesta include la proprietà retention
o quando si effettua una richiesta UPDATE
per un oggetto con una configurazione di conservazione esistente.
9 Questa autorizzazione è necessaria solo se la richiesta include il
parametro di query overrideUnlockedRetention=true
.
10 Questa autorizzazione è necessaria solo se la richiesta include il
parametro di query allowNonEmpty=true
.
11 Questa autorizzazione è necessaria solo se la richiesta include il parametro di query allowOverwrite=true
e causa la sovrascrittura di un oggetto con lo stesso nome.
12 Questa autorizzazione è necessaria solo se la richiesta include il
parametro di query copySourceAcl=true
.
Metodi correlati all'ACL
La tabella seguente elenca le autorizzazioni IAM necessarie per eseguire metodi JSON che si applicano specificamente alla gestione degli ACL. Questi metodi si applicano solo ai bucket in cui l'opzione Accesso uniforme a livello di bucket è disabilitata.
Risorsa | Metodo | Autorizzazioni IAM richieste1 |
---|---|---|
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 nella richiesta utilizzi il parametro userProject
o l'intestazione x-goog-user-project
, devi disporre dell'autorizzazione serviceusage.services.use
per l'ID progetto specificato, oltre alle normali autorizzazioni IAM necessarie per effettuare la richiesta.
Passaggi successivi
Per un elenco dei ruoli e delle autorizzazioni che contengono, vedi Ruoli IAM per Cloud Storage.
Assegna i ruoli IAM a livello di progetto e bucket.