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 |
---|---|---|
Buckets |
delete |
storage.buckets.delete |
Buckets |
get |
storage.buckets.get storage.buckets.getIamPolicy 2storage.buckets.getIpFilter 13 |
Buckets |
getIamPolicy |
storage.buckets.getIamPolicy |
Buckets |
insert |
storage.buckets.create storage.buckets.enableObjectRetention 3storage.buckets.setIpFilter 14 |
Buckets |
list |
storage.buckets.list storage.buckets.getIamPolicy 2storage.buckets.getIpFilter 13 |
Buckets |
listChannels |
storage.buckets.get |
Buckets |
lockRetentionPolicy |
storage.buckets.update |
Buckets |
patch |
storage.buckets.update storage.buckets.getIamPolicy 4storage.buckets.setIamPolicy 5storage.buckets.setIpFilter 14storage.buckets.getIpFilter 13 |
Buckets |
setIamPolicy |
storage.buckets.setIamPolicy |
Buckets |
testIamPermissions |
Keine |
Buckets |
update |
storage.buckets.update storage.buckets.getIamPolicy 4storage.buckets.setIamPolicy 5storage.buckets.setIpFilter 14storage.buckets.getIpFilter 13 |
Channels |
stop |
Keine |
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 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 IP-Filterregeln für Bucket als Teil einer full
-Projektion einschließen möchten. Wenn Sie diese Berechtigung nicht haben und die Projektion full
anfordern, erhalten Sie nur eine Teilprojektion. Wenn Sie IP-Filterregeln für Bucket in Ihrer Antwort ausschließen möchten, können Sie eine noAcl
-Projektion anfordern.
14: Diese Berechtigung ist nur erforderlich, wenn Sie IP-Filterregeln für Bucket erstellen, auflisten, löschen und aktualisieren 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.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 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.