Cloud-IAM-Berechtigungen für gsutil-Befehle

Die folgende Tabelle enthält die Berechtigungen von Cloud Identity and Access Management (Cloud IAM), die zum Ausführen der einzelnen gsutil-Befehle von Cloud Storage für eine bestimmte Ressource erforderlich sind. Hinweise zur Verwendung von Platzhaltern sowie den Flags -r und -m finden Sie im Abschnitt unter der Tabelle.

Befehl Unterbefehl Aufgerufene Ressource Erforderliche Cloud-IAM-Berechtigungen
acl get Buckets storage.buckets.get
storage.buckets.getIamPolicy
acl set oder ch Buckets storage.buckets.get
storage.buckets.getIamPolicy
storage.buckets.setIamPolicy
storage.buckets.update
acl get Objekte storage.objects.get
storage.objects.getIamPolicy10
acl set oder ch Objekte storage.objects.get
storage.objects.getIamPolicy10
storage.objects.setIamPolicy10
storage.objects.update
bucketpolicyonly set Buckets storage.buckets.setIamPolicy2
bucketpolicyonly get Buckets storage.buckets.get
cat Objekte storage.objects.get
compose Objekte storage.objects.get (für die Quellobjekte)
storage.objects.create (für den Ziel-Bucket)
storage.objects.delete1 (für den Ziel-Bucket)
config Keine
cors get Buckets storage.buckets.get
cors set Buckets storage.buckets.update
cp Objekte storage.objects.list2 (für den Ziel-Bucket)
storage.objects.get (für die Quellobjekte)
storage.objects.create (für den Ziel-Bucket)
storage.objects.delete1 (für den Ziel-Bucket)
storage.objects.getIamPolicy3,10 (für die Quellobjekte)
storage.objects.setIamPolicy3,10 (für den Ziel-Bucket)
cp -n Objekte storage.objects.list2 (für den Ziel-Bucket)
storage.objects.get (für die Quellobjekte und den Ziel-Bucket)
storage.objects.create (für den Ziel-Bucket)
storage.objects.getIamPolicy3,10 (für die Quellobjekte)
storage.objects.setIamPolicy3,10 (für den Ziel-Bucket)
defacl get Buckets storage.buckets.get
storage.buckets.getIamPolicy
defacl set oder ch Buckets storage.buckets.get
storage.buckets.getIamPolicy
storage.buckets.setIamPolicy
storage.buckets.update
defstorageclass get Buckets storage.buckets.get
defstorageclass set Buckets storage.buckets.update
du Objekte storage.objects.get
hash Objekte storage.objects.get
help Keine
iam get Buckets storage.buckets.get
storage.buckets.getIamPolicy
iam set oder ch Buckets storage.buckets.get
storage.buckets.getIamPolicy
storage.buckets.setIamPolicy
storage.buckets.update
iam get Objekte storage.objects.get
storage.objects.getIamPolicy10
iam set oder ch Objekte storage.objects.get
storage.objects.getIamPolicy10
storage.objects.setIamPolicy10
storage.objects.update
kms authorize Projekte resourceManager.projects.get
iam.serviceAccounts.create4
cloudkms.cryptoKey.setIamPolicy (für den autorisierten Cloud KMS-Schlüssel)
kms encryption Buckets storage.buckets.get
kms encryption -d Buckets storage.buckets.get
storage.buckets.update
kms encryption -k Buckets, Projekte7 storage.buckets.get
storage.buckets.update
resourceManager.projects.get7
cloudkms.cryptoKey.setIamPolicy7
kms serviceaccount Projekte resourceManager.projects.get
label get Buckets storage.buckets.get
label set/ch Buckets storage.buckets.update
lifecycle get Buckets storage.buckets.get
lifecycle set/ch Buckets storage.buckets.update
logging get Buckets storage.buckets.get
logging set Buckets storage.buckets.update
ls Projekte storage.buckets.list
storage.buckets.get5
storage.buckets.getIamPolicy6
ls Buckets, Objekte storage.objects.list
storage.objects.get5
storage.objects.getIamPolicy6,10
ls -b Buckets storage.buckets.get
storage.buckets.getIamPolicy6
mb Buckets storage.buckets.create
mv Objekte storage.objects.list2 (für den Ziel-Bucket)
storage.objects.get (für die Quellobjekte)
storage.objects.create (für den Ziel-Bucket)
storage.objects.delete (für den Ziel-Bucket)
storage.objects.delete1 (für den Ziel-Bucket)
storage.objects.getIamPolicy3,10 (für die Quellobjekte)
storage.objects.setIamPolicy3,10 (für den Ziel-Bucket)
mv -n Objekte storage.objects.list2 (für den Ziel-Bucket)
storage.objects.get (für die Quellobjekte und den Ziel-Bucket)
storage.objects.create (für den Ziel-Bucket)
storage.objects.delete (für den Ziel-Bucket)
storage.objects.getIamPolicy3,10 (für die Quellobjekte)
storage.objects.setIamPolicy3,10 (für den Ziel-Bucket)
notification create Buckets storage.buckets.update
pubsub.topics.get (für das Projekt, das das Pub/Sub-Thema enthält)
pubsub.topics.create8 (für das Projekt, das das Pub/Sub-Thema enthält)
pubsub.topics.getIamPolicy (für das Pub/Sub-Thema, das Benachrichtigungen erhält)
pubsub.topics.setIamPolicy8 (für das Pub/Sub-Thema, das Benachrichtigungen erhält)
notification create -s Buckets storage.buckets.update
notification delete Buckets storage.buckets.update
notification list Buckets storage.buckets.get
notification watchbucket Buckets storage.buckets.update
notification stopchannel Buckets storage.buckets.update
perfdiag Buckets storage.buckets.get
storage.objects.create
storage.objects.delete
storage.objects.list
storage.objects.get
rb Buckets storage.buckets.delete
requesterpays get Buckets storage.buckets.get
requesterpays set on Buckets storage.buckets.get
storage.buckets.update
requesterpays set off Buckets storage.buckets.get
storage.buckets.update
resourcemanager.projects.createBillingAssignment9
retention clear, event-default, lock oder set Buckets storage.buckets.update
retention event oder temp Objekte storage.objects.get
storage.objects.list
storage.objects.update
retention get Buckets storage.buckets.get
rewrite -k Objekte storage.objects.list
storage.objects.get
storage.objects.create
storage.objects.delete
rewrite -s Objekte storage.objects.list
storage.objects.get
storage.objects.create
storage.objects.delete
storage.objects.update
rm Buckets storage.buckets.delete
storage.objects.delete
storage.objects.list
rm Objekte storage.objects.delete
rsync Objekte storage.objects.get (für die Quellobjekte und den Ziel-Bucket)
storage.objects.create (für den Ziel-Bucket)
storage.objects.delete1 (für den Ziel-Bucket)
storage.objects.list (für die Quellobjekte und Ziel-Buckets)
storage.objects.getIamPolicy3,10 (für die Quellobjekte)
storage.objects.setIamPolicy3,10 (für den Ziel-Bucket)
rsync -d Objekte storage.objects.get (für die Quellobjekte und den Ziel-Bucket)
storage.objects.create (für den Ziel-Bucket)
storage.objects.delete (für den Ziel-Bucket)
storage.objects.list (für die Quellobjekte und Ziel-Buckets)
storage.objects.getIamPolicy3,10 (für die Quellobjekte)
storage.objects.setIamPolicy3,10 (für den Ziel-Bucket)
rsync -n Objekte storage.objects.list (für die Quellobjekte und Ziel-Buckets)
setmeta Objekte storage.objects.get
storage.objects.list
storage.objects.update
signurl Keine; das mit der Anfrage verknüpfte Dienstkonto muss jedoch die Berechtigung storage.objects.get besitzen.
stat Objekte storage.objects.get
test Keine
update EUR
version Keine
versioning get Buckets storage.buckets.get
versioning set Buckets storage.buckets.update
web get Buckets storage.buckets.get
web set Buckets storage.buckets.update

1 Diese Berechtigung ist nur erforderlich, wenn das eingefügte Objekt denselben Namen wie ein Objekt hat, das schon im Bucket vorhanden ist.

2 Diese Berechtigung ist nur erforderlich, wenn das Ziel im Befehl einen Objektpfad enthält.

3 Diese Berechtigung ist nur erforderlich, wenn im Befehl das Flag -a oder -p verwendet wird.

4 Diese Berechtigung ist nur erforderlich, wenn dem Projekt kein Cloud Storage-Dienstkonto zugeordnet ist.

5 Diese Berechtigung ist nur erforderlich, wenn im Befehl das Flag -L oder -l verwendet wird.

6 Diese Berechtigung ist nur erforderlich, wenn Sie IAM-Richtlinien in die Details aufgenommen haben.

7 Wenn Sie gsutil kms encryption -k verwenden und das Dienstkonto des Projekts nicht dazu berechtigt ist, auf den angeforderten Cloud KMS-Schlüssel zuzugreifen, führt gsutil gsutil kms authorize aus, um dem Dienstkonto die erforderliche Berechtigung zu erteilen.

8 Diese Berechtigungen sind nicht erforderlich, wenn das Thema bereits existiert und das entsprechende Dienstkonto darauf zugreifen kann.

9 Diese Berechtigung ist nur erforderlich, wenn in Ihrer Anfrage kein Abrechnungsprojekt enthalten ist. Weitere Informationen finden Sie unter Anforderungen für Zugriff und Verwendung im Abschnitt "Sender bezahlt".

10 Diese Berechtigung gilt nicht für Buckets mit aktivierter Nur Bucket-Richtlinie.

Top-Level-Flag -u

Wenn Sie zum Festlegen eines Projekts, das für Ihre Anfrage abgerechnet werden soll, das Flag der obersten Ebene -u verwenden, benötigen Sie für das Projekt die Berechtigung serviceusage.services.use. Das Flag -u wird beispielsweise beim Zugriff auf einen Bucket mit der aktivierten Option Sender bezahlt verwendet.

Platzhalter und wiederkehrende Flags

Wenn Sie URI-Platzhalter verwenden, um in einem Befehl mehrere Objekte auszuwählen, ist für den Bucket mit den Objekten die Berechtigung storage.objects.list erforderlich. Das Gleiche gilt, wenn Sie URI-Platzhalter verwenden, um in einem Befehl mehrere Buckets auszuwählen. Dann benötigen Sie die Berechtigung storage.buckets.list für die Projekte, die diese Buckets enthalten.

Wenn Sie die wiederkehrenden Flags (-r und -R) verwenden, benötigen Sie die Berechtigung storage.objects.list für den entsprechenden Bucket sowie zusätzlich die Berechtigungen, die für den jeweils verwendeten Befehl erforderlich sind.

Top-Level-Flag -m

Wenn Sie einen gsutil-Befehl verwenden, der für mehrere Objekte oder Buckets gilt, schlägt die Ausführung des Befehls normalerweise fehl, sobald ein Fehler auftritt. Wenn Sie allerdings das Flag der obersten Ebene -m verwenden, erfasst gsutil alle erkannten Fehler und setzt den Vorgang fort.

Nehmen wir zum Beispiel an, dass Sie versuchen, den Befehl acl set für mehrere Objekte auszuführen, die Berechtigung dazu aber nur für einige dieser Objekte besitzen. Wenn Sie das Flag -m nicht verwenden, wendet gsutil die ACLs so lange fehlerfrei an, bis es zu einem Objekt gelangt, für das Sie keine Berechtigung zur Anwendung einer ACL besitzen. An dieser Stelle schlägt gsutil fehl. Wenn Sie hingegen das Flag -m verwenden, zeichnet gsutil die Fehler auf, die beim Versuch der Anwendung einer ACL auf ein Objekt auftreten, für das Sie keine Berechtigung haben, setzt aber den Vorgang fort.

Weitere Informationen

Hat Ihnen diese Seite weitergeholfen? Teilen Sie uns Ihr Feedback mit:

Feedback geben zu...