Die folgende Tabelle enthält die Berechtigungen von Identity and Access Management (IAM), die benötigt werden, um die einzelnen JSON-Methoden von Cloud Storage auf einer bestimmten Ressource auszuführen. IAM-Berechtigungen sind zusammengefasst, um Rollen zu erstellen. Sie weisen Nutzern und Gruppen Rollen zu.
Weitere Methoden, die nur für Buckets mit deaktiviertem einheitlichen Zugriff auf Bucket-Ebene gelten, finden Sie in der Tabelle der ACL-Methoden.
| Resource | Methode | Erforderliche IAM-Berechtigungen1 |
|---|---|---|
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 |
Keine |
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 |
Keine |
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 Wenn Sie in Ihrer Anfrage den Parameter userProject oder den Header x-goog-user-project verwenden, benötigen Sie für die Projekt-ID, die Sie angeben, die Berechtigung serviceusage.services.use, zusätzlich zu den normalen IAM-Berechtigungen, die zum Senden der Anfrage erforderlich sind.
2 Diese Berechtigung ist nur erforderlich, wenn Sie ACLs oder IAM-Richtlinien als Teil einer Projektion des Typs full einschließen möchten. Wenn Sie diese Berechtigung nicht haben und die Projektion full anfordern, erhalten Sie nur eine Teilprojektion.
3 Diese Berechtigung ist nur erforderlich, wenn die Anfrage den Abfrageparameter enableObjectRetention enthält.
4 Diese Berechtigung ist nur erforderlich, wenn Sie ACLs als Teil der Antwort einschließen möchten.
5 Diese Berechtigung ist erforderlich, wenn Sie ACLs oder Änderungen an der Einstellung Verhinderung des öffentlichen Zugriffs als Teil der Anfrage einschließen möchten.
6 Diese Berechtigung gilt nicht für Buckets mit aktiviertem einheitlichen Zugriff auf Bucket-Ebene.
7 Diese Berechtigung ist nur erforderlich, wenn die Anfrage zum Überschreiben eines Objekts mit demselben Namen führt.
8 Diese Berechtigung ist erforderlich, wenn der Anfragetext das Attribut retention enthält oder wenn eine UPDATE-Anfrage für ein Objekt mit einer vorhandenen Aufbewahrungskonfiguration erfolgt.
9 Diese Berechtigung ist nur erforderlich, wenn die Anfrage den Abfrageparameter overrideUnlockedRetention=true enthält.
10 Diese Berechtigung ist nur erforderlich, wenn die Anfrage den Abfrageparameter allowNonEmpty=true enthält.
11 Diese Berechtigung ist nur erforderlich, wenn die Anfrage den Abfrageparameter allowOverwrite=true enthält und die Anfrage dazu führt, dass ein Objekt mit demselben Namen überschrieben wird.
12 Diese Berechtigung ist nur erforderlich, wenn die Anfrage den Abfrageparameter copySourceAcl=true enthält.
13 Diese Berechtigung ist nur erforderlich, wenn Sie Bucket-IP-Filterregeln als Teil der Buckets: get-Anfrage einschließen möchten. Wenn Sie diese Berechtigung nicht haben, erhalten Sie nur eine Teilprojektion.
14 Diese Berechtigung ist nur erforderlich, wenn Sie Bucket-IP-Filterregeln erstellen, auflisten, löschen und aktualisieren möchten.
15 Wenn Sie ein Objekt in einem Bucket mit aktiviertem hierarchischen Namespace verschieben möchten, benötigen Sie entweder die Berechtigungen storage.objects.delete und storage.objects.get oder die Berechtigung storage.objects.move, wenn Sie das Objekt verschieben möchten, ohne Lese- oder Löschzugriff auf das Objekt zu gewähren.
16 Diese Berechtigung ist nur erforderlich, wenn Sie ein Objekt ersetzen möchten.
17 Diese Berechtigung ist nur erforderlich, wenn Sie fehlende übergeordnete Ordner automatisch erstellen möchten.
18 Diese Berechtigung ist nur erforderlich, wenn Sie mit Anywhere Cache erstellte Caches zurückgeben möchten.
19 Diese Berechtigung ist nur erforderlich, wenn die Anfrage entweder ein nicht leeres Attribut destination.contexts.custom zum Erstellen eines Objekts oder ein nicht leeres Attribut contexts.custom zum Kopieren, Einfügen oder Umschreiben eines Objekts enthält.
20 Diese Berechtigung ist nur erforderlich, wenn Sie einem Objekt Kontexte hinzufügen möchten.
21 Diese Berechtigung ist nur erforderlich, wenn Sie die Kontexte eines Objekts aktualisieren möchten.
22 Diese Berechtigung ist nur erforderlich, wenn Sie Kontexte eines Objekts löschen möchten.
ACL-bezogene Methoden
In der folgenden Tabelle sind die IAM-Berechtigungen aufgeführt, die zum Ausführen der speziell für die Verwaltung von ACLs geltenden JSON-Methoden erforderlich sind. Diese Methoden gelten nur für Buckets, für die der einheitliche Zugriff auf Bucket-Ebene deaktiviert ist.
| Resource | Methode | Erforderliche IAM-Berechtigungen1 |
|---|---|---|
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 Wenn Sie in Ihrer Anfrage den Parameter userProject oder den Header x-goog-user-project verwenden, benötigen Sie für die Projekt-ID, die Sie angeben, die Berechtigung serviceusage.services.use, zusätzlich zu den normalen IAM-Berechtigungen, die zum Senden der Anfrage erforderlich sind.
Nächste Schritte
Eine Liste der Rollen und der darin enthaltenen Berechtigungen finden Sie unter IAM-Rollen für Cloud Storage.