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.
Konfigurieren von IAM-Richtlinien für die Verwendung von Zugriffspunkten
Amazon S3 Access Points unterstützen Ressourcenrichtlinien AWS Identity and Access Management (IAM), mit denen Sie die Nutzung des Access Points nach Ressourcen, Benutzern oder anderen Bedingungen steuern können. Damit eine Anwendung oder ein Benutzer über einen Zugriffspunkt auf Objekte zugreifen kann, müssen sowohl der Zugriffspunkt als auch der zugrunde liegende Bucket die Anforderung zulassen.
Wichtig
Das Hinzufügen eines S3-Zugriffspunkts zu einem Bucket ändert nicht das Verhalten des Buckets, wenn über den vorhandenen Bucket-Namen oder den Amazon-Ressourcennamen (ARN) auf ihn zugegriffen wird. Alle vorhandenen Vorgänge für den Bucket funktionieren weiterhin wie zuvor. Einschränkungen, die Sie in eine Zugriffspunktrichtlinie einschließen, gelten nur für Anforderungen, die über diesen Zugriffspunkt eingehen.
Wenn Sie IAM-Ressourcenrichtlinien verwenden, stellen Sie sicher, dass Sie Sicherheitswarnungen, Fehler, allgemeine Warnungen und Vorschläge von AWS Identity and Access Management Access Analyzer vor dem Speichern Ihrer Richtlinie behoben haben. IAM Access Analyzer führt Richtlinienprüfungen durch, um Ihre Richtlinie anhand der IAM-Richtliniengrammatik und der bewährten Methoden zu validieren. Diese Prüfungen generieren Ergebnisse und bieten Empfehlungen, die Sie beim Erstellen von Richtlinien unterstützen, die funktionsfähig sind und den bewährten Methoden für Sicherheit entsprechen.
Weitere Informationen zum Validieren von Richtlinien mit IAM Access Analyzer finden Sie unter Validierung der IAM-Access-Analyzer-Richtlinien im IAM-Benutzerhandbuch. Eine Liste der Warnungen, Fehler und Vorschläge, die von IAM Access Analyzer zurückgegeben werden, finden Sie unter IAM-Access-Analyzer-Richtlinienprüfungsreferenz.
Beispiele von -Zugriffspunktrichtlinien
In den folgenden Beispielen wird veranschaulicht, wie IAM-Richtlinien zum Steuern von Anforderungen erstellt werden, die über einen Zugriffspunkt eingehen.
Anmerkung
Berechtigungen, die in einer Zugriffspunktrichtlinie erteilt werden, sind nur wirksam, wenn der zugrunde liegende Bucket auch denselben Zugriff zulässt. Sie können dies auf zwei Arten erreichen:
-
(Empfohlen) Delegieren Sie die Zugriffssteuerung vom Bucket an den Zugriffspunkt, wie unter Delegieren der Zugangskontrolle an Zugriffspunkte beschrieben.
-
Fügen Sie der Richtlinie des zugrunde liegenden Buckets dieselben Berechtigungen hinzu, die in der Zugriffspunktrichtlinie enthalten sind. Beispiel 1 für eine Zugriffspunktrichtlinie veranschaulicht, wie die zugrunde liegende Bucket-Richtlinie geändert wird, damit der erforderliche Zugriff gewährt wird.
Beispiel 1 – Erteilung der Zugriffspunktberechtigung
Die folgende Zugriffspunktrichtlinie gewährt IAM-Benutzer
in Konto Jane
Berechtigungen für 123456789012
GET
- und PUT
-Objekte mit dem Präfix
über Zugriffspunkt Jane/
in Konto my-access-point
.123456789012
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::
123456789012
:user/Jane
" }, "Action": ["s3:GetObject", "s3:PutObject"], "Resource": "arn:aws:s3:us-west-2
:123456789012
:accesspoint/my-access-point
/object/Jane/
*" }] }
Anmerkung
Damit die Zugriffspunkt-Richtlinie effektiv Zugriff auf
gewährt, muss der zugrunde liegende Bucket Jane
auch denselben Zugriff gewähren. Sie können die Zugriffssteuerung vom Bucket an den Zugriffspunkt delegieren, wie unter Delegieren der Zugangskontrolle an Zugriffspunkte beschrieben. Oder Sie können dem zugrunde liegenden Bucket die folgende Richtlinie hinzufügen, um Jane die erforderlichen Berechtigungen zu erteilen. Beachten Sie, dass sich der Jane
Resource
-Eintrag zwischen den Zugriffspunkt- und Bucket-Richtlinien unterscheidet.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::
123456789012
:user/Jane
" }, "Action": ["s3:GetObject", "s3:PutObject"], "Resource": "arn:aws:s3:::amzn-s3-demo-bucket1
/Jane/
*" }] }
Beispiel 2 – Zugriffspunktrichtlinie mit Tag-Bedingung
Die folgende Zugriffspunktrichtlinie gewährt IAM-Benutzer
in Konto Mateo
Berechtigungen für 123456789012
GET
-Objekte über Zugriffspunkt
in Konto my-access-point
, für deren Tag-Schlüssel 123456789012
der Wert data
festgelegt ist.finance
{ "Version":"2012-10-17", "Statement": [ { "Effect":"Allow", "Principal" : { "AWS": "arn:aws:iam::
123456789012
:user/Mateo
" }, "Action":"s3:GetObject", "Resource" : "arn:aws:s3:us-west-2
:123456789012
:accesspoint/my-access-point
/object/*", "Condition" : { "StringEquals": { "s3:ExistingObjectTag/data
": "finance
" } } }] }
Beispiel 3 – Zugriffspunktrichtlinie, die eine Bucket-Auflistung ermöglicht
Die folgende Zugriffspunktrichtlinie berechtigt den IAM-Benutzer Arnav
im Konto
dazu, die Objekte in dem Bucket anzuzeigen, der Zugriffspunkt 123456789012
im Konto my-access-point
zugrunde liegt.123456789012
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::
123456789012
:user/Arnav
" }, "Action": "s3:ListBucket", "Resource": "arn:aws:s3:us-west-2
:123456789012
:accesspoint/my-access-point
" }] }
Beispiel 4 – Service-Kontrollrichtlinie
Die folgende Service-Kontrollrichtlinie erfordert, dass alle neuen Zugriffspunkte mit einem Virtual Private Cloud (VPC)-Netzwerkursprung erstellt werden. Mit dieser Richtlinie können Benutzer in Ihrer Organisation keine neuen Zugriffspunkte erstellen, auf die über das Internet zugegriffen werden kann.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "s3:CreateAccessPoint", "Resource": "*", "Condition": { "StringNotEquals": { "s3:AccessPointNetworkOrigin": "VPC" } } }] }
Beispiel 5 – Bucket-Richtlinie zur Begrenzung von S3-Vorgängen für VPC-Netzwerkursprünge
Die folgende Bucket-Richtlinie beschränkt den Zugriff auf alle S3-Objekt-Vorgänge für Bucket
auf Zugriffspunkte mit einem VPC-Netzwerkursprung.amzn-s3-demo-bucket
Wichtig
Bevor Sie eine Anweisung wie in diesem Beispiel gezeigt verwenden, stellen Sie sicher, dass Sie keine Funktionen verwenden müssen, die von Zugriffspunkten nicht unterstützt werden, z. B. regionsübergreifende Replikation.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Principal": "*", "Action": [ "s3:AbortMultipartUpload", "s3:BypassGovernanceRetention", "s3:DeleteObject", "s3:DeleteObjectTagging", "s3:DeleteObjectVersion", "s3:DeleteObjectVersionTagging", "s3:GetObject", "s3:GetObjectAcl", "s3:GetObjectLegalHold", "s3:GetObjectRetention", "s3:GetObjectTagging", "s3:GetObjectVersion", "s3:GetObjectVersionAcl", "s3:GetObjectVersionTagging", "s3:ListMultipartUploadParts", "s3:PutObject", "s3:PutObjectAcl", "s3:PutObjectLegalHold", "s3:PutObjectRetention", "s3:PutObjectTagging", "s3:PutObjectVersionAcl", "s3:PutObjectVersionTagging", "s3:RestoreObject" ], "Resource": "arn:aws:s3:::
amzn-s3-demo-bucket
/*", "Condition": { "StringNotEquals": { "s3:AccessPointNetworkOrigin": "VPC" } } } ] }
Bedingungsschlüssel
S3-Zugriffspunkte verwenden Bedingungsschlüssel, die Sie in IAM-Richtlinien zur Kontrolle des Zugriffs auf Ihre Ressourcen verwendet werden können. Die folgenden Bedingungsschlüssel stellen nur einen Teil einer IAM-Richtlinie dar. Vollständige Richtlinienbeispiele finden Sie unter Beispiele von -Zugriffspunktrichtlinien, Delegieren der Zugangskontrolle an Zugriffspunkte und Erteilen von Berechtigungen für kontoübergreifende Zugriffspunkte.
s3:DataAccessPointArn
-
Dieses Beispiel zeigt eine Zeichenfolge, die Sie mit einem Zugriffspunkt-ARN abgleichen können. Das folgende Beispiel entspricht allen Access Points für AWS-Konto
in Region123456789012
:us-west-2
"Condition" : { "StringLike": { "s3:DataAccessPointArn": "arn:aws:s3:
us-west-2
:123456789012
:accesspoint/*" } } s3:DataAccessPointAccount
-
Dieses Beispiel zeigt einen Zeichenfolgenoperator, mit dem Sie die Konto-ID des Besitzers eines Zugriffspunkts abgleichen können. Das folgende Beispiel entspricht allen Zugriffspunkten im Besitz des AWS-Konto s
.123456789012
"Condition" : { "StringEquals": { "s3:DataAccessPointAccount": "
123456789012
" } } s3:AccessPointNetworkOrigin
-
Dieses Beispiel zeigt einen Zeichenfolgenoperator, den Sie verwenden können, um für den Netzwerkursprung entweder
Internet
oderVPC
abzugleichen. Im folgenden Beispiel werden nur Zugriffspunkte mit einem VPC-Ursprung abgeglichen."Condition" : { "StringEquals": { "s3:AccessPointNetworkOrigin": "VPC" } }
Weitere Informationen zur Verwendung von Bedingungsschlüsseln mit Amazon S3 finden Sie unter Aktionen, Ressourcen und Bedingungsschlüssel für Amazon S3 in der Service-Authorization-Referenz.
Weitere Informationen zu den Berechtigungen für S3-API-Operationen nach S3-Ressourcentypen finden Sie unter Erforderliche Berechtigungen für Amazon-S3-API-Operationen.
Delegieren der Zugangskontrolle an Zugriffspunkte
Sie können die Zugriffssteuerung für einen Bucket an die Zugriffspunkte des Buckets delegieren. Die folgende Bucket-Beispielrichtlinie ermöglicht Vollzugriff auf alle Zugriffspunkte, die dem Konto des Bucket-Eigentümers gehören. Somit wird der gesamte Zugriff auf diesen Bucket durch die an seine Zugriffspunkte angehängten Richtlinien gesteuert. Wir empfehlen, Ihre Buckets auf diese Weise für alle Anwendungsfälle zu konfigurieren, die keinen direkten Zugriff auf den Bucket erfordern.
Beispiel 6 – Bucket-Richtlinie zum Delegieren der Zugriffskontrolle an Standardzugriffspunkte
{ "Version": "2012-10-17", "Statement" : [ { "Effect": "Allow", "Principal" : { "AWS": "*" }, "Action" : "*", "Resource" : [ "
Bucket ARN
", "Bucket ARN
/*"], "Condition": { "StringEquals" : { "s3:DataAccessPointAccount" : "Bucket owner's account ID
" } } }] }
Erteilen von Berechtigungen für kontoübergreifende Zugriffspunkte
Wenn Sie einen Zugriffspunkt für einen Bucket erstellen möchten, der einem anderen Konto gehört, müssen Sie zuerst den Zugriffspunkt erstellen, indem Sie den Bucket-Namen und die Kontobesitzer-ID angeben. Dann muss der Bucket-Eigentümer die Bucket-Richtlinie aktualisieren, um Anfragen vom Zugriffspunkt zu autorisieren. Ein Zugriffspunkt wird insofern ähnlich erstellt wie ein DNS-CNAME, als der Zugriffspunkt keinen Zugriff auf den Bucket-Inhalt bietet. Der gesamte Bucket-Zugriff wird durch die Bucket-Richtlinie kontrolliert. Die folgende Bucket-Beispielrichtlinie erlaubt GET
- und LIST
- Anfragen an den Bucket von einem Zugriffspunkt aus, der einem vertrauenswürdigen AWS-Konto gehört.
Bucket ARN
Ersetzen Sie es durch den ARN des Buckets.
Beispiel 7 — Bucket-Richtlinie, mit der Berechtigungen an einen anderen delegiert werden AWS-Konto
{ "Version": "2012-10-17", "Statement" : [ { "Effect": "Allow", "Principal" : { "AWS": "*" }, "Action" : ["s3:GetObject","s3:ListBucket"], "Resource" : [ "
Bucket ARN
", "Bucket ARN
/*"], "Condition": { "StringEquals" : { "s3:DataAccessPointAccount" : "Access point owner's account ID
" } } }] }