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.
Voraussetzungen für die Deaktivierung ACLs
Wenn Ihr Bucket Zugriff außerhalb Ihres ACL gewährt AWS-Konto, müssen Sie vor der Deaktivierung ACLs Ihre ACL Bucket-Berechtigungen auf Ihre Bucket-Richtlinie migrieren und Ihren Bucket ACL auf die Standardeinstellung „PrivatACL“ zurücksetzen. Wenn Sie diese Buckets nicht migrierenACLs, schlägt Ihre Anfrage ACLs fehl, die vom Bucket-Besitzer erzwungene Deaktivierung anzuwenden und gibt den InvalidBucketAclWithObjectOwnershipFehlercode. Wir empfehlen Ihnen außerdem, Ihre ACL Objektberechtigungen zu überprüfen und sie in Ihre Bucket-Richtlinie zu migrieren. Weitere Informationen zu anderen empfohlenen Voraussetzungen finden Sie unter Voraussetzungen für die Deaktivierung ACLs.
Für jeden Ihrer vorhandenen Buckets und Objekte ACLs gibt es ein Äquivalent in einer IAM Richtlinie. Die folgenden Beispiele für Bucket-Richtlinien zeigen Ihnen, wie READ
und wie die WRITE
Berechtigungen für Bucket und Objekt ACLs den IAM Berechtigungen zugeordnet werden. Weitere Informationen darüber, wie beide Begriffe in IAM Berechtigungen ACL übersetzt werden, finden Sie unterZuordnung von ACL Berechtigungen und Zugriffsrichtlinienberechtigungen.
Informationen zur Überprüfung und Migration von ACL Berechtigungen zu Bucket-Richtlinien finden Sie in den folgenden Themen.
Themen
Beispiele für Bucket-Richtlinie
Diese Beispiel-Bucket-Richtlinien zeigen Ihnen, wie Sie WRITE
Bucket- und ACL Objektberechtigungen für Dritte AWS-Konto auf eine Bucket-Richtlinie migrierenREAD
. READ_ACP
und WRITE_ACP
ACLs sind für Richtlinien weniger relevant, da sie ACL entsprechende Berechtigungen gewähren (s3:GetBucketAcl
s3:GetObjectAcl
,s3:PutBucketAcl
, unds3:PutObjectAcl
).
Beispiel — READ
ACL für einen Eimer
Wenn Ihr Bucket eine hatte READ
ACL, die die AWS-Konto
Erlaubnis erteilt, den Inhalt Ihres Buckets aufzulisten, können Sie eine Bucket-Richtlinie schreiben, die111122223333
s3:ListBucket
,s3:ListBucketVersions
, s3:ListBucketMultipartUploads
Berechtigungen für Ihren Bucket gewährt.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "Permission to list the objects in a bucket", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::
111122223333
:root" ] }, "Action": [ "s3:ListBucket", "s3:ListBucketVersions", "s3:ListBucketMultipartUploads" ], "Resource": "arn:aws:s3:::" } ] }
amzn-s3-demo-bucket
Beispiel — READ
ACLs für jedes Objekt in einem Bucket
Wenn jedes Objekt in Ihrem Bucket über ein Objekt verfügt, READ
ACL das Zugriff gewährt AWS-Konto
, können Sie eine Bucket-Richtlinie schreiben, die diesem Konto für jedes Objekt in Ihrem Bucket 111122223333
s3:GetObjectVersion
Berechtigungen gewährts3:GetObject
.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "Read permission for every object in a bucket", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::
111122223333
:root" ] }, "Action": [ "s3:GetObject", "s3:GetObjectVersion" ], "Resource": "arn:aws:s3:::/*" } ] }
amzn-s3-demo-bucket
Dieses Beispiel-Ressourcenelement gewährt Zugriff auf ein bestimmtes Objekt.
"Resource": "arn:aws:s3:::
/
amzn-s3-demo-bucket
OBJECT-KEY
"
Beispiel — WRITE
ACL die berechtigt, Objekte in einen Bucket zu schreiben
Wenn Ihr Bucket über eine verfügt WRITE
ACL, die die AWS-Konto
Erlaubnis erteilt, Objekte in Ihren Bucket zu schreiben, können Sie eine Bucket-Richtlinie schreiben, die die 111122223333
s3:PutObject
Erlaubnis für Ihren Bucket erteilt.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "Permission to write objects to a bucket", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::
111122223333
:root" ] }, "Action": [ "s3:PutObject" ], "Resource": "arn:aws:s3:::/*" } ] }
amzn-s3-demo-bucket
Verwenden Sie die S3-Konsole, um ACL Berechtigungen zu überprüfen und zu migrieren
Um die ACL Berechtigungen eines Buckets zu überprüfen
Melden Sie sich bei der an AWS Management Console und öffnen Sie die Amazon S3 S3-Konsole unter https://console.aws.amazon.com/s3/
. -
Wählen Sie in der Liste Buckets den Namen des Buckets aus.
-
Wählen Sie die Registerkarte Berechtigungen.
-
Überprüfen Sie unter Zugriffskontrollliste (ACL) Ihre ACL Bucket-Berechtigungen.
Um die ACL Berechtigungen eines Objekts zu überprüfen
Melden Sie sich bei der an AWS Management Console und öffnen Sie die Amazon S3 S3-Konsole unter https://console.aws.amazon.com/s3/
. -
Wählen Sie in der Liste Buckets den Namen des Buckets aus, der Ihr Objekt enthält.
-
Wählen Sie in der Liste Objekts (Objekte) den Objektnamen aus.
-
Wählen Sie die Registerkarte Berechtigungen.
-
Überprüfen Sie unter Zugriffskontrollliste (ACL) Ihre ACL Objektberechtigungen.
Um ACL Berechtigungen zu migrieren und Ihren Bucket zu aktualisieren ACL
Melden Sie sich bei der an AWS Management Console und öffnen Sie die Amazon S3 S3-Konsole unter https://console.aws.amazon.com/s3/
. -
Wählen Sie in der Liste Buckets den Namen des Buckets aus.
-
Wählen Sie auf der Registerkarte Berechtigungen unter Bucket-Richtlinie die Option Bearbeiten aus.
-
Fügen Sie im Feld Richtlinie Ihre Bucket-Richtlinie hinzu oder aktualisieren Sie sie.
Beispiele für Bucket-Richtlinien finden Sie unter Beispiele für Bucket-Richtlinie und Beispielhafte Walkthroughs.
-
Wählen Sie Änderungen speichern.
-
Aktualisieren Sie Ihren Bucket ACL, um ACL Zuschüsse für andere Gruppen zu entfernen oder AWS-Konten.
-
Wenden Sie die Einstellung Bucket-Eigentümer erzwungen für die Objekteigentümerschaft an.
Verwenden Sie das AWS CLI , um ACL Berechtigungen zu überprüfen und zu migrieren
-
Um den Bucket ACL für Ihren Bucket zurückzugeben, verwenden Sie den get-bucket-acl
AWS CLI Befehl: aws s3api get-bucket-acl --bucket
amzn-s3-demo-bucket
Dieser Bucket ACL gewährt
WRITE
beispielsweiseREAD
Zugriff auf ein Drittanbieter-Konto. Dabei wird ACL das Drittanbieter-Konto anhand der kanonischen Benutzer-ID identifiziert. Um die Einstellung „Bucket-Besitzer erzwungen“ anzuwenden und zu deaktivierenACLs, müssen Sie diese Berechtigungen für das Drittanbieter-Konto auf eine Bucket-Richtlinie migrieren.{ "Owner": { "DisplayName": "
DOC-EXAMPLE-ACCOUNT-OWNER
", "ID": "852b113e7a2f25102679df27bb0ae12b3f85be6BucketOwnerCanonicalUserID
" }, "Grants": [ { "Grantee": { "DisplayName": "DOC-EXAMPLE-ACCOUNT-OWNER
", "ID": "852b113e7a2f25102679df27bb0ae12b3f85be6BucketOwnerCanonicalUserID
", "Type": "CanonicalUser" }, "Permission": "FULL_CONTROL" }, { "Grantee": { "DisplayName": "THIRD-PARTY-EXAMPLE-ACCOUNT
", "ID": "72806de9d1ae8b171cca9e2494a8d1335dfced4ThirdPartyAccountCanonicalUserID
", "Type": "CanonicalUser" }, "Permission": "READ" }, { "Grantee": { "DisplayName": "THIRD-PARTY-EXAMPLE-ACCOUNT
", "ID": "72806de9d1ae8b171cca9e2494a8d1335dfced4ThirdPartyAccountCanonicalUserID
", "Type": "CanonicalUser" }, "Permission": "WRITE" } ] }Ein anderes Beispiel finden Sie ACLs unterBeispielhafte Walkthroughs.
-
Migrieren Sie Ihre ACL Bucket-Berechtigungen zu einer Bucket-Richtlinie:
In diesem Beispiel gewährt Bucket-Richtlinien
s3:PutObject
unds3:ListBucket
Berechtigungen für ein Drittanbieterkonto. In der Bucket-Richtlinie wird das Drittanbieter-Konto anhand der AWS-Konto ID (
) identifiziert.111122223333
aws s3api put-bucket-policy --bucket
--policyamzn-s3-demo-bucket
file://policy.json
policy.json: { "Version": "2012-10-17", "Statement": [ { "Sid": "PolicyForCrossAccountAllowUpload", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::111122223333
:root" ] }, "Action": [ "s3:PutObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::
", "arn:aws:s3:::amzn-s3-demo-bucket
/*" } ] }amzn-s3-demo-bucket
Weitere Beispiele für Bucket-Richtlinien finden Sie unter Beispiele für Bucket-Richtlinie und Beispielhafte Walkthroughs.
-
Um das ACL für ein bestimmtes Objekt zurückzugeben, verwenden Sie get-object-acl
AWS CLI Befehl. aws s3api get-object-acl --bucket
amzn-s3-demo-bucket
--keyEXAMPLE-OBJECT-KEY
-
Migrieren Sie bei Bedarf ACL Objektberechtigungen zu Ihrer Bucket-Richtlinie.
Dieses Beispiel-Ressourcenelement gewährt Zugriff auf ein bestimmtes Objekt in einer Bucket-Richtlinie.
"Resource": "arn:aws:s3:::
amzn-s3-demo-bucket
/EXAMPLE-OBJECT-KEY
" -
Setzen Sie die ACL für Ihren Bucket auf die Standardeinstellung zurückACL.
aws s3api put-bucket-acl --bucket
amzn-s3-demo-bucket
--acl private -
Wenden Sie die Einstellung „Bucket-Eigentümer erzwungen“ für die Objekteigentümerschaft an.
Beispielhafte Walkthroughs
Die folgenden Beispiele zeigen Ihnen, wie Sie ACL Berechtigungen für bestimmte Anwendungsfälle auf Bucket-Richtlinien migrieren.
Themen
Gewähren von Zugriff auf die S3-Protokollbereitstellungsgruppe für die Protokollierung des Serverzugriffs
Wenn Sie die Einstellung Bucket Owner erforced anwenden möchten, um sie ACLs für einen Ziel-Bucket für die Serverzugriffsprotokollierung (auch als Ziel-Bucket bezeichnet) zu deaktivieren, müssen Sie die ACL Bucket-Berechtigungen für die S3-Protokollzustellungsgruppe in einer Bucket-Richtlinie auf den Logging-Serviceprinzipal (logging.s3.amazonaws.com
) migrieren. Weitere Informationen zu Berechtigungen für die Protokollzustellung finden Sie unter Berechtigungen für Protokollbereitstellung.
Dieser Bucket ACL gewährt WRITE
READ_ACP
Zugriff auf die S3-Protokollbereitstellungsgruppe:
{ "Owner": { "DisplayName": "
DOC-EXAMPLE-ACCOUNT-OWNER
", "ID": "852b113e7a2f25102679df27bb0ae12b3f85be6BucketOwnerCanonicalUserID
" }, "Grants": [ { "Grantee": { "Type": "CanonicalUser", "DisplayName": "DOC-EXAMPLE-ACCOUNT-OWNER
", "ID": "852b113e7a2f25102679df27bb0ae12b3f85be6BucketOwnerCanonicalUserID
" }, "Permission": "FULL_CONTROL" }, { "Grantee": { "Type": "Group", "URI": "http://acs.amazonaws.com/groups/s3/LogDelivery" }, "Permission": "WRITE" }, { "Grantee": { "Type": "Group", "URI": "http://acs.amazonaws.com/groups/s3/LogDelivery" }, "Permission": "READ_ACP" } ] }
Um ACL Bucket-Berechtigungen für die S3-Protokollzustellungsgruppe in einer Bucket-Richtlinie auf den Logging-Serviceprinzipal zu migrieren
-
Fügen Sie Ihrem Ziel-Bucket die folgende Bucket-Richtlinie hinzu. wobei Sie die Beispielwerte ersetzen.
aws s3api put-bucket-policy --bucket
amzn-s3-demo-bucket
--policyfile://policy.json
policy.json: { { "Version": "2012-10-17", "Statement": [ { "Sid": "S3ServerAccessLogsPolicy", "Effect": "Allow", "Principal": { "Service": "logging.s3.amazonaws.com" }, "Action": [ "s3:PutObject" ], "Resource": "arn:aws:s3:::
/amzn-s3-demo-bucket
EXAMPLE-LOGGING-PREFIX
*", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:s3:::SOURCE-BUCKET-NAME
" }, "StringEquals": { "aws:SourceAccount": "SOURCE-AWS-ACCOUNT-ID
" } } } ] } -
Setzen Sie den Bucket ACL für Ihren Ziel-Bucket auf die Standardeinstellung zurückACL.
aws s3api put-bucket-acl --bucket
amzn-s3-demo-bucket
--acl private -
Wenden Sie die Einstellung „Von Bucket-Besitzer erzwungen“ für den Objektbesitz auf Ihren Ziel-Bucket an.
Öffentlichen Lesezugriff auf die Objekte in einem Bucket gewähren
Wenn Ihr Objekt öffentlichen Lesezugriff auf alle Objekte in Ihrem Bucket ACLs gewährt, können Sie diese ACL Berechtigungen in eine Bucket-Richtlinie migrieren.
Dieses Objekt ACL gewährt öffentlichen Lesezugriff auf ein Objekt in einem Bucket:
{ "Owner": { "DisplayName": "
DOC-EXAMPLE-ACCOUNT-OWNER
", "ID": "852b113e7a2f25102679df27bb0ae12b3f85be6BucketOwnerCanonicalUserID
" }, "Grants": [ { "Grantee": { "DisplayName": "DOC-EXAMPLE-ACCOUNT-OWNER
", "ID": "852b113e7a2f25102679df27bb0ae12b3f85be6BucketOwnerCanonicalUserID
", "Type": "CanonicalUser" }, "Permission": "FULL_CONTROL" }, { "Grantee": { "Type": "Group", "URI": "http://acs.amazonaws.com/groups/global/AllUsers" }, "Permission": "READ" } ] }
Um öffentliche ACL Leseberechtigungen auf eine Bucket-Richtlinie zu migrieren
-
Um öffentlichen Lesezugriff auf alle Objekte in Ihrem Bucket zu gewähren, fügen Sie die folgende Bucket-Richtlinie hinzu und ersetzen Sie die Beispielwerte.
aws s3api put-bucket-policy --bucket
amzn-s3-demo-bucket
--policy file://policy.json
policy.json: { "Version": "2012-10-17", "Statement": [ { "Sid": "PublicReadGetObject", "Effect": "Allow", "Principal": "*", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket
/*" ] } ] }Um öffentlichen Zugriff auf ein bestimmtes Objekt in einer Bucket-Richtlinie zu gewähren, verwenden Sie das folgende Format für das
Resource
-Element."Resource": "arn:aws:s3:::
amzn-s3-demo-bucket
/OBJECT-KEY
"Um öffentlichen Zugriff auf alle Objekte mit einem bestimmten Präfix zu gewähren, verwenden Sie das folgende Format für das
Resource
-Element."Resource": "arn:aws:s3:::
amzn-s3-demo-bucket
/PREFIX/
*" -
Wenden Sie die Einstellung „Bucket-Eigentümer erzwungen“ für die Objekteigentümerschaft an.
Gewähren Sie Amazon ElastiCache (RedisOSS) Zugriff auf Ihren S3-Bucket
Sie können Ihr ElastiCache (Redis-OSS) Backup in einen S3-Bucket exportieren, sodass Sie von außen auf das Backup zugreifen können. ElastiCache Um Ihr Backup in einen S3-Bucket zu exportieren, müssen Sie ElastiCache Berechtigungen zum Kopieren eines Snapshots in den Bucket erteilen. Wenn Sie ElastiCache in einem Bucket Berechtigungen erteilt habenACL, müssen Sie diese Berechtigungen in eine Bucket-Richtlinie migrieren, bevor Sie die Einstellung Bucket owner erforced auf Deaktivierung ACLs anwenden. Weitere Informationen finden Sie unter ElastiCache Zugriff auf Ihren Amazon S3 S3-Bucket gewähren im ElastiCache Amazon-Benutzerhandbuch.
Das folgende Beispiel zeigt die ACL Bucket-Berechtigungen, denen Berechtigungen gewährt werden ElastiCache.
{ "Owner": { "DisplayName": "
DOC-EXAMPLE-ACCOUNT-OWNER
", "ID": "852b113e7a2f25102679df27bb0ae12b3f85be6BucketOwnerCanonicalUserID
" }, "Grants": [ { "Grantee": { "DisplayName": "DOC-EXAMPLE-ACCOUNT-OWNER
", "ID": "852b113e7a2f25102679df27bb0ae12b3f85be6BucketOwnerCanonicalUserID
", "Type": "CanonicalUser" }, "Permission": "FULL_CONTROL" }, { "Grantee": { "DisplayName": "aws-scs-s3-readonly", "ID": "540804c33a284a299d2547575ce1010f2312ef3da9b3a053c8bc45bf233e4353", "Type": "CanonicalUser" }, "Permission": "READ" }, { "Grantee": { "DisplayName": "aws-scs-s3-readonly", "ID": "540804c33a284a299d2547575ce1010f2312ef3da9b3a053c8bc45bf233e4353", "Type": "CanonicalUser" }, "Permission": "WRITE" }, { "Grantee": { "DisplayName": "aws-scs-s3-readonly", "ID": "540804c33a284a299d2547575ce1010f2312ef3da9b3a053c8bc45bf233e4353", "Type": "CanonicalUser" }, "Permission": "READ_ACP" } ] }
Um ACL Bucket-Berechtigungen für ElastiCache (RedisOSS) zu einer Bucket-Richtlinie zu migrieren
-
Fügen Sie Ihrem Bucket die folgende Bucket-Richtlinie hinzu und ersetzen Sie die Beispielwerte.
aws s3api put-bucket-policy --bucket
amzn-s3-demo-bucket
--policy file://policy.json
policy.json: { "Version": "2012-10-17", "Statement": [ { "Sid": "Stmt15399483", "Effect": "Allow", "Principal": { "Service": "Region
.elasticache-snapshot.amazonaws.com" }, "Action": [ "s3:PutObject", "s3:GetObject", "s3:ListBucket", "s3:GetBucketAcl", "s3:ListMultipartUploadParts", "s3:ListBucketMultipartUploads" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket
", "arn:aws:s3:::amzn-s3-demo-bucket
/*" ] } ] } -
Setzen Sie die ACL für Ihren Bucket auf die Standardeinstellung zurückACL:
aws s3api put-bucket-acl --bucket
amzn-s3-demo-bucket
--acl private -
Wenden Sie die Einstellung „Bucket-Eigentümer erzwungen“ für die Objekteigentümerschaft an.