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.
Konfiguration von IAM Richtlinien für die Verwendung von Access Points
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 das Verhalten des Buckets nicht, wenn auf den Bucket direkt über den Namen des Buckets oder den Amazon-Ressourcennamen (ARN) 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 AWS Identity and Access Management Access Analyzer vor dem Speichern Ihrer Richtlinie behoben haben. IAMAccess Analyzer führt Richtlinienprüfungen durch, um Ihre Richtlinie anhand der IAM Richtliniengrammatik und der bewährten Methoden zu überprüfen. 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 zur Überprüfung von Richtlinien mithilfe von IAM Access Analyzer finden Sie unter IAMAccess Analyzer-Richtlinienvalidierung im IAMBenutzerhandbuch. Eine Liste der Warnungen, Fehler und Vorschläge, die von Access Analyzer zurückgegeben werden, finden Sie unter IAM IAMAccess Analyzer-Referenz zur Richtlinienüberprüfung.
Beispiele von -Zugriffspunktrichtlinien
Die folgenden Beispiele zeigen, wie IAM Richtlinien zur Steuerung von Anfragen über einen Access Point erstellt werden.
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 Benutzern GET
und
Benutzerkonten Jane
Berechtigungen für 123456789012
PUT
Objekte mit dem Präfix
über den Zugriffspunkt Jane/
im 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 Zugangspunkt-Richtlinie effektiv Zugriff gewährt
, muss der zugrundeliegende Bucket auch denselben Zugriff auf ermöglichen Jane
. Sie können die Zugriffskontrolle vom Bucket an den Access Point delegieren, wie unter beschriebenDelegieren der Zugangskontrolle an Zugriffspunkte. 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 dem Benutzer
auf Rechnung Mateo
Berechtigungen für 123456789012
GET
Objekte über den Access Point
auf dem Konto my-access-point
die den Tag-Schlüssel haben 123456789012
gesetzt mit einem Wert von data
.finanzieren
{ "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 erlaubt IAM Benutzern Arnav
den Zugriff auf das Konto
Berechtigung zum Anzeigen der Objekte, die sich in dem Bucket befinden, der dem Access Point zugrunde liegt 123456789012
auf dem Konto my-access-point
.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
Gemäß der folgenden Dienststeuerungsrichtlinie müssen alle neuen Access Points mit einem Netzwerkursprung aus einer virtuellen privaten Cloud (VPC) 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 Beschränkung von S3-Vorgängen auf VPC Netzwerkquellen
Die folgende Bucket-Richtlinie beschränkt den Zugriff auf alle S3-Objektoperationen für den Bucket
auf Zugriffspunkte mit 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 verfügen über Bedingungsschlüssel, die Sie in IAM Richtlinien verwenden können, um den Zugriff auf Ihre Ressourcen zu kontrollieren. 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 für den Abgleich auf einem Access Point verwenden könnenARN. Das folgende Beispiel entspricht allen Access Points für AWS-Konto
in der 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 Access Points, die dem gehören AWS-Konto
.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. Das folgende Beispiel entspricht nur Access Points mit einem VPC Ursprung."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 Reference.
Weitere Informationen zu den Berechtigungen für API S3-Operationen nach S3-Ressourcentypen finden Sie unterErforderliche Berechtigungen für Amazon S3 API S3-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. Das Erstellen eines Access Points ähnelt dem Erstellen eines Access Points DNS CNAME insofern, als der Access Point 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.
Ersetzen Bucket ARN
mit dem 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
" } } }] }