Autorizzazioni IAM per i comandi gcloud storage

La tabella seguente elenca le autorizzazioni Identity and Access Management (IAM) necessaria per eseguire i comandi gcloud storage. Autorizzazioni IAM vengono raggruppati per creare i ruoli. Tu concedere ruoli alle entità.

Consulta le sezioni sotto la tabella per le note sull'utilizzo dei caratteri jolly, la --recursive e il flag --billing-project.

Comando Bandiera Autorizzazioni IAM richieste
buckets add-iam-policy-binding storage.buckets.get
storage.buckets.getIamPolicy
storage.buckets.setIamPolicy
storage.buckets.update
buckets create storage.buckets.create
buckets delete storage.buckets.delete
buckets describe storage.buckets.get
storage.buckets.getIamPolicy1
buckets get-iam-policy storage.buckets.get
storage.buckets.getIamPolicy
buckets list storage.buckets.list
storage.buckets.getIamPolicy1
buckets notifications create storage.buckets.get
storage.buckets.update
pubsub.topics.get (per il progetto contenente l'argomento Pub/Sub)
pubsub.topics.create3 (per il progetto contenente l'argomento Pub/Sub)
pubsub.topics.getIamPolicy (per l'argomento Pub/Sub che riceve notifiche)
pubsub.topics.setIamPolicy3 (per l'argomento Pub/Sub che riceve notifiche)
buckets notifications create --skip-topic-setup storage.buckets.get
storage.buckets.update
buckets notifications delete storage.buckets.get
storage.buckets.update
buckets notifications describe storage.buckets.get
buckets notifications list storage.buckets.get
buckets remove-iam-policy-binding storage.buckets.get
storage.buckets.getIamPolicy
storage.buckets.setIamPolicy
storage.buckets.update
buckets set-iam-policy storage.buckets.setIamPolicy
storage.buckets.update
buckets update storage.buckets.update
buckets update --no-requester-pays storage.buckets.update
resourcemanager.projects.createBillingAssignment2
buckets update --recovery-point-objective
--rpo
--[no-]uniform-bucket-level-access
--[no-]uniform-bucket-level-access storage.buckets.get
storage.buckets.update
buckets update --clear-pap
--clear-public-access-prevention
--[no-]pap
--[no-]public-access-prevention
storage.buckets.get
storage.buckets.update
storage.buckets.setIamPolicy
cat storage.objects.get
storage.objects.list13
cp storage.objects.get (per gli oggetti di origine)
storage.buckets.get12 (per il bucket di destinazione)
storage.objects.list4 (per il bucket di destinazione)
storage.objects.create (per il bucket di destinazione)
storage.objects.delete5 (per il bucket di destinazione)
storageinsights.reportDetails.get15
du storage.objects.list
folders create storage.folders.create
folders delete storage.folders.delete
folders describe storage.folders.get
folders list storage.folders.list
folders rename storage.folders.rename (per il bucket di origine)
storage.folders.create (per il bucket di destinazione)
hash storage.objects.get
hmac create storage.hmacKeys.create
hmac delete storage.hmacKeys.delete
hmac describe storage.hmacKeys.get
hmac list storage.hmacKeys.list
hmac update storage.hmacKeys.update
insights inventory-reports create storageinsights.reportConfigs.create
insights inventory-reports delete storageinsights.reportConfigs.delete
insights inventory-reports details list storageinsights.reportDetails.list
insights inventory-reports details describe storageinsights.reportDetails.get
insights inventory-reports list storageinsights.reportConfigs.list
insights inventory-reports update storageinsights.reportConfigs.get
storageinsights.reportConfigs.update
ls (per l'elenco dei bucket) storage.buckets.list
storage.buckets.getIamPolicy6
ls (per l'elenco degli oggetti) storage.objects.get7
storage.objects.list
storage.objects.getIamPolicy8
ls --buckets storage.buckets.get
storage.buckets.getIamPolicy6
mv storage.objects.list4 (per il bucket di destinazione)
storage.objects.get (per gli oggetti di origine)
storage.objects.create (per il bucket di destinazione)
storage.objects.delete (per il bucket di origine)
storage.objects.delete5 (per il bucket di destinazione)
objects compose storage.objects.get
storage.objects.create
storage.objects.delete9
objects describe storage.objects.get
storage.objects.getIamPolicy8
objects list storage.objects.list
storage.objects.getIamPolicy8
objects update storage.objects.get
storage.objects.list
storage.objects.update
objects update --storage-class
--encryption-key
--clear-encryption-key
storage.objects.get
storage.objects.list
storage.objects.create
storage.objects.delete
objects update --retention-mode
--retain-until
--clear-retention
storage.objects.get
storage.objects.list
storage.objects.update
storage.objects.setRetention
storage.objects.overrideUnlockedRetention11
restore storage.objects.create
storage.objects.delete9
storage.objects.restore
restore --async storage.objects.create
storage.objects.delete14
storage.objects.restore
storage.buckets.restore
rm storage.buckets.delete
storage.objects.delete
storage.objects.list
rsync storage.objects.get (per gli oggetti di origine e il bucket di destinazione)
storage.objects.create (per il bucket di destinazione)
storage.objects.delete10 (per il bucket di destinazione)
storage.objects.list (per i bucket di origine e di destinazione)
rsync --dry-run storage.objects.list (per i bucket di origine e di destinazione)
service-agent resourceManager.projects.get
sign-url Nessuno; ma l'account di servizio la cui chiave viene utilizzata deve disporre dell'autorizzazione per eseguire la richiesta l'URL firmato.

1Questa autorizzazione è necessaria solo se vuoi IAM inclusi nei dettagli.

2Questa autorizzazione è necessaria solo se non includi un indirizzo di fatturazione progetto nella tua richiesta. Consulta i requisiti di utilizzo e accesso per i pagamenti a carico del richiedente. per ulteriori informazioni.

3 Queste autorizzazioni non sono necessarie se l'argomento esiste già e a cui può accedere l'account di servizio pertinente.

4 Questa autorizzazione è richiesta solo quando la destinazione nel campo contiene un percorso dell'oggetto.

5Questa autorizzazione è richiesta solo se utilizzi caricamenti compositi paralleli o se non usi il flag --no-clobber ma inserire un oggetto che ha lo stesso nome di un oggetto già esistente di sincronizzare la directory di una VM con un bucket.

6Questa autorizzazione è necessaria solo se vuoi IAM inclusi nei dettagli.

7Questa autorizzazione è richiesta solo se utilizzi Flag --fetch-encrypted-object-hashes.

8Questa autorizzazione è necessaria solo se vuoi IAM inclusi nei dettagli e non si applica ai bucket con accesso uniforme a livello di bucket abilitato.

9Questa autorizzazione è richiesta solo se l'operazione crea un oggetto con lo stesso nome di un oggetto già esistente nel bucket.

10Questa autorizzazione è richiesta solo se utilizzi il --delete-unmatched-destination-objects o se inserisci un oggetto che ha lo stesso nome, ma dati diversi rispetto a un oggetto che già nel bucket.

11Questa autorizzazione è necessaria solo se la richiesta ti richiede anche per utilizzare il flag --override-unlocked-retention.

12Questa autorizzazione è necessaria per eseguire caricamenti compositi paralleli se la proprietà gcloud CLI storage/parallel_composite_upload_compatibility_check è impostato su True.

13Questa autorizzazione è necessaria solo se vuoi usare normali per recuperare gli oggetti.

14Questa autorizzazione è necessaria solo se la richiesta include i campi --allow-overwrite e l'operazione crea un oggetto con lo stesso nome come oggetto già esistente nel bucket.

15Questa autorizzazione è richiesta solo per scaricare i report sull'inventario.

La bandiera di primo livello --billing-project

Se usi il flag globale --billing-project per specificare un progetto che ricevere gli addebiti per la tua richiesta, devi disporre di serviceusage.services.use per il progetto specificato. Viene utilizzato il flag --billing-project, ad esempio quando si accede a un bucket in cui è abilitato Requester Pays (Pagamenti a carico del richiedente).

Caratteri jolly e flag ricorsivi

Se utilizzi i caratteri jolly URI per selezionare più oggetti in un comando, deve disporre dell'autorizzazione storage.objects.list per il bucket contenente di oggetti strutturati. Allo stesso modo, se utilizzi caratteri jolly URI per selezionare più bucket in un comando, devi avere l'autorizzazione storage.buckets.list per progetti contenenti i bucket.

Se utilizzi il flag --recursive, devi avere storage.objects.list per il bucket pertinente, oltre alle autorizzazioni necessarie per il comando specifico che stai utilizzando.

Passaggi successivi