Menerapkan penghapusan bersyarat pada bucket Amazon S3 - Amazon Simple Storage Service

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Menerapkan penghapusan bersyarat pada bucket Amazon S3

Dengan menggunakan kebijakan bucket Amazon S3, Anda dapat menerapkan If-Match header dengan penghapusan bersyarat untuk objek di bucket tujuan umum. Jika If-Match header tidak ada, permintaan akan ditolak dengan file403 Access Denied. Kebijakan bucket adalah kebijakan berbasis sumber daya yang dapat Anda gunakan untuk memberikan izin akses ke bucket dan objek di dalamnya. Hanya pemilik bucket yang dapat mengaitkan kebijakan dengan bucket. Untuk informasi lebih lanjut tentang kebijakan bucket, lihat Kebijakan bucket untuk Amazon S3.

Contoh berikut menunjukkan cara menggunakan kondisi dalam kebijakan bucket untuk memaksa klien menggunakan header If-Match HTTP.

Contoh 1: Hanya izinkan penghapusan bersyarat menggunakan If-Match header dengan nilai ETag

Anda dapat menggunakan kebijakan bucket ini untuk hanya mengizinkan penghapusan bersyarat yang menggunakan DeleteObject dan DeleteObjects permintaan yang menyertakan If-Match header dengan nilaiETag. Semua penghapusan non-kondisional akan ditolak dan penghapusan bersyarat akan berlalu.

{ "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/*" } ] }

Contoh 2: Hanya izinkan penghapusan bersyarat menggunakan If-Match header dengan nilai *

Anda dapat menggunakan kebijakan bucket ini untuk hanya mengizinkan penghapusan bersyarat menggunakan DeleteObject dan DeleteObjects permintaan yang menyertakan If-Match header dengan * nilai. Semua penghapusan non-kondisional akan ditolak dan penghapusan bersyarat akan berlalu.

{ "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" } } } ] }