Erzwingen von bedingten Löschungen auf Amazon S3 Buckets - 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.

Erzwingen von bedingten Löschungen auf Amazon S3 Buckets

Durch die Verwendung von Amazon S3-Bucket-Richtlinien können Sie If-Match-Header mit bedingten Löschungen für Objekte in Allzweck-Buckets erzwingen. Wenn der If-Match-Header nicht existiert, wird die Anfrage mit einem 403 Access Denied abgelehnt. Eine Bucket-Richtlinie ist eine auf Ressourcen basierende Richtlinie, die Sie verwenden können, um Zugriffsberechtigungen für Ihren Bucket und die darin enthaltenen Objekte zu erteilen. Nur der Bucket-Eigentümer kann einem Bucket eine Richtlinie zuordnen. Weitere Informationen zu Bucket-Richtlinien finden Sie unter Bucket-Richtlinien für Amazon S3.

Die folgenden Beispiele zeigen, wie Bedingungen in einer Bucket-Richtlinie verwendet werden, um Clients dazu zu zwingen, einen If-Match-HTTP-Header zu verwenden.

Beispiel 1: Nur bedingte Löschungen unter Verwendung der Kopfzeile If-Match mit dem Wert ETag zulassen

Mit dieser Bucket-Richtlinie können Sie nur bedingte Löschungen mit DeleteObject und DeleteObjects Anfragen zulassen, die den If-Match Header mit dem ETag Wert enthalten. Alle nicht bedingten Löschungen würden verweigert und bedingte Löschungen würden erfolgreich sein.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowConditionalDeletes", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:user/Alice" }, "Action": "s3:DeleteObject", "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*", "Condition": { "Null": { "s3:if-match": "false" } } }, { "Sid": "AllowGetObjectBecauseConditionalDeleteIfMatchETag", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:user/Alice" }, "Action": "s3:GetObject", "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*" } ] }

Beispiel 2: Nur bedingte Löschungen unter Verwendung des If-Match-Headers mit dem *-Wert zulassen

Mit dieser Bucket-Richtlinie können Sie nur bedingte Löschungen mit DeleteObject und DeleteObjects Anfragen zulassen, die den If-Match Header mit dem * Wert enthalten. Alle nicht bedingten Löschungen würden verweigert und bedingte Löschungen würden erfolgreich sein.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowConditionalDeletes", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:user/Alice" }, "Action": "s3:DeleteObject", "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*", "Condition": { "Null": { "s3:if-match": "false" } } } ] }