Amazon S3-Richtlinienaktionen - Amazon Simple Storage Service

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Amazon S3-Richtlinienaktionen

Anmerkung

Auf dieser Seite geht es um Amazon S3-Richtlinienaktionen für Allzweck-Buckets. Weitere Informationen zu Amazon S3-Richtlinienaktionen für Verzeichnis-Buckets finden Sie unter Aktionen für S3 Express One Zone.

Amazon S3 definiert eine Reihe von Berechtigungen, die Sie in einer Richtlinie angeben können. Um Berechtigungen zum Ausführen einer S3-API-Operation zu erteilen, müssen Sie eine gültige Richtlinie (z. B. eine S3-Bucket-Richtlinie oder eine identitätsbasierte IAM-Richtlinie) erstellen und entsprechende Aktionen im -ActionElement der Richtlinie angeben. Diese Aktionen werden als Richtlinienaktionen bezeichnet. Im Folgenden werden verschiedene Arten von Zuordnungsbeziehungen zwischen S3-API-Operationen und den erforderlichen Richtlinienaktionen gezeigt.

  • One-to-one -Zuweisung mit demselben Namen. Um beispielsweise die PutBucketPolicy-API-Operation zu verwenden, ist die s3:PutBucketPolicy Richtlinienaktion erforderlich.

  • One-to-one -Zuweisung mit unterschiedlichen Namen. Um beispielsweise die ListObjectsV2-API-Operation zu verwenden, ist die s3:ListBucket Richtlinienaktion erforderlich.

  • O-ne-to-many Zuweisung. Um beispielsweise die HeadObject-API-Operation zu verwenden, s3:GetObject ist erforderlich. Wenn Sie die S3-Objektsperre verwenden und den Status oder die Aufbewahrungseinstellungen für rechtliche Aufbewahrungsfristen eines Objekts abrufen möchten, sind auch die entsprechenden - s3:GetObjectLegalHold oder -s3:GetObjectRetentionRichtlinienaktionen erforderlich, bevor Sie die HeadObject API-Operation verwenden können.

  • M-any-to-one Zuweisung. Um beispielsweise die - ListObjectsV2 oder HeadBucket-API-Operationen zu verwenden, ist die s3:ListBucket Richtlinienaktion erforderlich.

Um eine gültige S3-Bucket-Richtlinie zu erstellen, müssen Sie neben dem -ActionElement auch die Resource Elemente EffectPrincipal, und angeben. Darüber hinaus können Sie das -ConditionElement angeben, um eine detailliertere Kontrolle über S3-API-Operationen zu haben.

Um eine gültige identitätsbasierte IAM-Richtlinie zu erstellen, müssen Sie neben dem -ActionElement auch - Effect und -ResourceElemente angeben. Eine gültige identitätsbasierte IAM-Richtlinie enthält das -PrincipalElement nicht.

Eine vollständige Liste der Amazon S3-Richtlinienaktionen, Ressourcen und Bedingungsschlüssel für die Verwendung in -Richtlinien finden Sie unter Aktionen, Ressourcen und Bedingungsschlüssel für Amazon S3 in der Service-Autorisierungs-Referenz.

Wenn Sie Richtlinien erstellen, müssen Sie das -ResourceElement auf der Grundlage des richtigen Ressourcentyps angeben, der für die entsprechenden Amazon S3-Richtlinienaktionen erforderlich ist. Auf dieser Seite werden Berechtigungen für S3-API-Operationen nach den Ressourcentypen kategorisiert. Weitere Informationen zu den Ressourcentypen finden Sie unter Von Amazon S3 definierte Ressourcentypen in der Service-Autorisierungs-Referenz. Eine vollständige Liste der Amazon S3-API-Operationen finden Sie unter Amazon S3-API-Aktionen in der Amazon-Simple-Storage-Service-API-Referenz.

Bucket-Operationen sind S3-API-Operationen, die für den Bucket-Ressourcentyp ausgeführt werden. Beispiel: CreateBucket, ListObjectsV2 und PutBucketPolicy. S3-Richtlinienaktionen für Bucket-Operationen erfordern, dass das -ResourceElement in Bucket-Richtlinien oder identitätsbasierten IAM-Richtlinien die Amazon-Ressourcenname (ARN)-ID des S3-Bucket-Typs im folgenden Beispielformat ist.

"Resource": "arn:aws:s3:::DOC-EXAMPLE-BUCKET"

Die folgende Bucket-Richtlinie erteilt dem Benutzer Akua mit Konto 12345678901 die s3:ListBucket Berechtigung, die ListObjectsV2-API-Operation auszuführen und Objekte in einem S3-Bucket aufzulisten.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "Allow Akua to list objects in the bucket", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::12345678901:user/Akua" }, "Action": [ "s3:ListBucket" ], "Resource": "arn:aws:s3:::DOC-EXAMPLE-BUCKET" } ] }
Bucket-Operationen in Zugriffspunktrichtlinien

Berechtigungen, die in einer Zugriffspunktrichtlinie gewährt werden, sind nur wirksam, wenn der zugrunde liegende Bucket dieselben Berechtigungen zulässt. Wenn Sie S3 Access Points verwenden, müssen Sie die Zugriffskontrolle vom Bucket an den Zugriffspunkt delegieren oder der Richtlinie des zugrunde liegenden Buckets dieselben Berechtigungen in den Zugriffspunktrichtlinien hinzufügen. Weitere Informationen finden Sie unter Konfigurieren von IAM-Richtlinien für die Verwendung von Zugriffspunkten. In Zugriffspunktrichtlinien erfordern S3-Richtlinienaktionen für Bucket-Operationen die Verwendung des accesspoint ARN für das -ResourceElement im folgenden Format.

"Resource": "arn:aws:s3:us-west-2:123456789012:accesspoint/DOC-EXAMPLE-ACCESS-POINT"

Die folgende Zugriffspunktrichtlinie gewährt dem Benutzer Akua mit Konto 12345678901 die s3:ListBucket Berechtigung, die ListObjectsV2-API-Operation über den S3-Zugriffspunkt DOC-EXAMPLE-ACCESS-POINT auszuführen, um Objekte im zugehörigen Bucket des Zugriffspunkts aufzulisten.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "Allow Akua to list objects in the bucket through access point", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::12345678901:user/Akua" }, "Action": [ "s3:ListBucket" ], "Resource": "arn:aws:s3:us-west-2:123456789012:accesspoint/DOC-EXAMPLE-ACCESS-POINT" } ] }
Anmerkung

Nicht alle Bucket-Operationen werden von S3 Access Point unterstützt. Weitere Informationen finden Sie unter Zugriffspunkt-Kompatibilität mit S3-Vorgänge.

Objektoperationen sind S3-API-Operationen, die auf den Objektressourcentyp wirken. Beispiel: GetObject, PutObject und DeleteObject. S3-Richtlinienaktionen für Objektoperationen erfordern, dass das -ResourceElement in Richtlinien in den folgenden Beispielformaten der S3-Objekt-ARN ist.

"Resource": "arn:aws:s3:::DOC-EXAMPLE-BUCKET/*"
"Resource": "arn:aws:s3:::DOC-EXAMPLE-BUCKET/prefix/*"
Anmerkung

Der Objekt-ARN muss einen Schrägstrich nach dem Bucket-Namen enthalten, wie in den vorherigen Beispielen gezeigt.

Die folgende Bucket-Richtlinie gewährt dem Benutzer Akua mit Konto 12345678901 die s3:PutObject Berechtigung, den PutObject API-Vorgang zum Hochladen von Objekten in einen S3-Bucket auszuführen.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "Allow Akua to upload objects", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::12345678901:user/Akua" }, "Action": [ "s3:PutObject" ], "Resource": "arn:aws:s3:::DOC-EXAMPLE-BUCKET/*" } ] }
Objektoperationen in Zugriffspunktrichtlinien

Wenn Sie den Zugriff auf Objektoperationen mit S3 Access Points steuern, können Sie Zugriffspunktrichtlinien verwenden. Wenn Sie Zugriffspunktrichtlinien verwenden, erfordern S3-Richtlinienaktionen für Objektoperationen die Verwendung des accesspoint ARN für das -ResourceElement im folgenden Format: arn:aws:s3:region:account-id:accesspoint/access-point-name/object/resource. Für Objektoperationen, die Zugriffspunkt verwenden, müssen Sie den /object/ Wert nach dem gesamten Zugriffspunkt-ARN in das -ResourceElement aufnehmen. Hier sind einige Beispiele.

"Resource": "arn:aws:s3:us-west-2:123456789012:accesspoint/DOC-EXAMPLE-ACCESS-POINT/object/*"
"Resource": "arn:aws:s3:us-west-2:123456789012:accesspoint/DOC-EXAMPLE-ACCESS-POINT/object/prefix/*"

Die folgende Zugriffspunktrichtlinie gewährt dem Benutzer Akua mit Konto 12345678901 die s3:GetObject Berechtigung, die GetObject API-Operation über den Zugriffspunkt DOC-EXAMPLE-ACCESS-POINT für alle Objekte im zugehörigen Bucket des Zugriffspunkts auszuführen.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "Allow Akua to get objects through access point", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::12345678901:user/Akua" }, "Action": [ "s3:GetObject" ], "Resource": "arn:aws:s3:us-west-2:123456789012:accesspoint/DOC-EXAMPLE-ACCESS-POINT/object/*" } ] }
Anmerkung

Nicht alle Objektoperationen werden von S3 Access Point unterstützt. Weitere Informationen finden Sie unter Zugriffspunkt-Kompatibilität mit S3-Vorgänge.

Zugriffspunkt-Operationen sind S3-API-Operationen, die für den accesspoint Ressourcentyp ausgeführt werden. Beispiel: CreateAccessPoint, DeleteAccessPoint und GetAccessPointPolicy. S3-Richtlinienaktionen für Zugriffspunkt-Operationen können nur in identitätsbasierten IAM-Richtlinien verwendet werden, nicht in Bucket-Richtlinien oder Zugriffspunkt-Richtlinien. Zugriffspunkt-Operationen erfordern, dass das -ResourceElement der accesspoint ARN im folgenden Beispielformat ist.

"Resource": "arn:aws:s3:us-west-2:123456789012:accesspoint/DOC-EXAMPLE-ACCESS-POINT"

Die folgende identitätsbasierte IAM-Richtlinie erteilt die s3:GetAccessPointPolicy Berechtigung zum Ausführen der GetAccessPointPolicy API-Operation auf dem S3-Zugriffspunkt DOC-EXAMPLE-ACCESS-POINT .

{ "Version": "2012-10-17", "Statement": [ { "Sid": "Grant permission to retrieve the access point policy of access point DOC-EXAMPLE-ACCESS-POINT", "Effect": "Allow", "Action": [ "s3:GetAccessPointPolicy" ], "Resource": "arn:aws:s3:*:123456789012:access point/DOC-EXAMPLE-ACCESS-POINT" } ] }

Wenn Sie Access Points verwenden, um den Zugriff auf Bucket-Operationen zu steuern, finden Sie weitere Informationen unter Bucket-Operationen in Zugriffspunktrichtlinien. Informationen zur Steuerung des Zugriffs auf Objektoperationen finden Sie unter Objektoperationen in Zugriffspunktrichtlinien. Weitere Informationen zum Konfigurieren von Zugriffspunktrichtlinien finden Sie unter Konfigurieren von IAM-Richtlinien für die Verwendung von Zugriffspunkten.

Weitere Informationen zum Konfigurieren von Richtlinien für Objekt-Lambda-Zugriffspunkt-Operationen finden Sie unter Konfigurieren von IAM-Richtlinien für Object Lambda Access Points.

Weitere Informationen zum Konfigurieren von Richtlinien für Multi-Region Access Point-Operationen finden Sie unter Beispielrichtlinien für Multi-Region Access Points.

(Batchoperationen) Auftragsoperationen sind S3-API-Operationen, die mit dem Ressourcentyp des Auftrags arbeiten. Beispiel: DescribeJob und CreateJob. S3-Richtlinienaktionen für Auftragsoperationen können nur in identitätsbasierten IAM-Richtlinien und nicht in Bucket-Richtlinien verwendet werden. Außerdem erfordern Auftragsoperationen, dass das -ResourceElement in identitätsbasierten IAM-Richtlinien der job ARN im folgenden Beispielformat ist.

"Resource": "arn:aws:s3:*:123456789012:job/*"

Die folgende identitätsbasierte IAM-Richtlinie erteilt die s3:DescribeJob Berechtigung zum Ausführen des DescribeJob API-Vorgangs für den S3-Batchoperationenauftrag DOC-EXAMPLE-JOB .

{ "Version": "2012-10-17", "Statement": [ { "Sid": "Allow describing the Batch operation job DOC-EXAMPLE-JOB", "Effect": "Allow", "Action": [ "s3:DescribeJob" ], "Resource": "arn:aws:s3:*:123456789012:job/DOC-EXAMPLE-JOB" } ] }

Weitere Informationen zum Konfigurieren von S3-Storage-Lens-Konfigurationsvorgängen finden Sie unter Berechtigungen für Amazon S3 Storage Lens.

Kontooperationen sind S3-API-Operationen, die auf Kontoebene ausgeführt werden. Zum Beispiel GetPublicAccessBlock (für -Konto). Das Konto ist kein von Amazon S3 definierter Ressourcentyp. S3-Richtlinienaktionen für Kontooperationen können nur in identitätsbasierten IAM-Richtlinien und nicht in Bucket-Richtlinien verwendet werden. Außerdem erfordern Kontooperationen, dass das -ResourceElement in identitätsbasierten IAM-Richtlinien ist"*".

Die folgende identitätsbasierte IAM-Richtlinie erteilt die s3:GetAccountPublicAccessBlock Berechtigung, den GetPublicAccessBlock API-Vorgang auf Kontoebene auszuführen und die Einstellungen für den öffentlichen Zugriffsblock auf Kontoebene abzurufen.

{ "Version":"2012-10-17", "Statement":[ { "Sid":"Allow retrieving the account-level Public Access Block settings", "Effect":"Allow", "Action":[ "s3:GetAccountPublicAccessBlock" ], "Resource":[ "*" ] } ] }