Get Hands-on with Amazon EKS - Workshop Event Series
Whether you're taking your first steps with Kubernetes or you're an experienced practitioner looking to sharpen your skills, our Amazon EKS workshop series delivers practical, real-world experience that moves you forward. Learn directly from AWS solutions architects and EKS specialists through hands-on sessions designed to build your confidence with Kubernetes. Register now and start building with Amazon EKS!
Wie behebe ich den Fehler „Bucket cannot have ACLs set with ObjectOwnership's BucketOwnerEnforced setting“ in CloudFormation?
Wenn ich versuche, einen Amazon Simple Storage Service (Amazon S3)-Bucket über einen AWS-CloudFormation-Stack bereitzustellen, erhalte ich eine Fehlermeldung.
Kurzbeschreibung
Für neu erstellte Buckets aktiviert Amazon S3 ObjectOwnership und legt es standardmäßig auf BucketOwnerEnforced fest. Mit dieser Einstellung werden Zugriffssteuerungslisten (ACLs) deaktiviert, der Bucket-Besitzer besitzt automatisch jedes Objekt im Bucket und hat die volle Kontrolle darüber. Daher führen Bereitstellungen, die versuchen, ACLs mit dieser Einstellung aufzurufen, zu dem folgenden Fehler:
Bucket cannot have ACLs set with ObjectOwnership's BucketOwnerEnforced setting (Service: Amazon S3; Status Code: 400; Error Code: InvalidBucketAclWithObjectOwnership; Request ID: VCC82DDB; S3 Extended Request ID: itIVupTUTYxdhtOqXHTRxiwthYK4I/AvFqgNCWSqs8=; Proxy: null)
Die folgende Bereitstellungsvorlage führt beispielsweise zu diesem Fehler:
AWSTemplateFormatVersion: "2010-09-09" Resources: PortalBucket: Type: AWS::S3::Bucket Properties: AccessControl: LogDeliveryWrite VersioningConfiguration: Status: Enabled WebsiteConfiguration: IndexDocument: 'index.html' ErrorDocument: 'error.html' BucketEncryption: ServerSideEncryptionConfiguration: - ServerSideEncryptionByDefault: SSEAlgorithm: AES256
Um dieses Problem zu beheben, ändern Sie den Wert von ObjectOwnership für den Bucket, sodass ACLs zugelassen werden.
Wichtig: Es ist keine bewährte Methode, ACLs für Amazon S3 zu verwenden. Wenn Ihr Anwendungsfall ACLs erfordert, lesen Sie die folgenden Schritte zur Fehlerbehebung, um diese zuzulassen.
Lösung
- Setzen Sie den Wert von ObjectOwnership auf ObjectWriter oder BucketOwnerPreferred.
- Verwenden Sie die folgende Vorlage, um Ihren S3-Bucket bereitzustellen:
AWSTemplateFormatVersion: "2010-09-09" Resources: PortalBucket: Type: AWS::S3::Bucket Properties: AccessControl: LogDeliveryWrite VersioningConfiguration: Status: Enabled WebsiteConfiguration: IndexDocument: 'index.html' ErrorDocument: 'error.html' BucketEncryption: ServerSideEncryptionConfiguration: - ServerSideEncryptionByDefault: SSEAlgorithm: AES256 OwnershipControls: Rules: - ObjectOwnership: ObjectWriter
Auf diese Weise können Sie ACLs für den Bucket aktivieren.
Weitere Informationen zum Standardverhalten von Amazon S3 mit ACLs finden Sie unter Achtung: Die Sicherheitsänderungen von Amazon S3 werden im April 2023 eingeführt.
- Themen
- Management & Governance
- Sprache
- Deutsch

Relevanter Inhalt
AWS OFFICIALAktualisiert vor 3 Monaten
AWS OFFICIALAktualisiert vor 2 Jahren
AWS OFFICIALAktualisiert vor einem Jahr