Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Bekerja dengan penanda hapus
Penanda hapus di Amazon S3 adalah placeholder (atau penanda) untuk objek berversi yang ditentukan dalam permintaan DELETE
sederhana. Permintaan DELETE
sederhana adalah permintaan yang tidak menentukan ID versi. Karena objek berada dalam bucket dengan dukungan Penentuan Versi, objek tidak dihapus. Namun, penanda hapus membuat Amazon S3 berperilaku seolah-olah objek telah dihapus. Anda dapat menggunakan API DELETE
panggilan Amazon S3 pada penanda hapus. Untuk melakukan ini, Anda harus membuat DELETE
permintaan dengan menggunakan AWS Identity and Access Management (IAM) pengguna atau peran dengan izin yang sesuai.
Penanda hapus memiliki nama kunci (atau kunci) dan ID versi seperti objek lainnya. Namun, penanda hapus berbeda dengan objek lain dalam hal berikut:
-
Penanda hapus tidak memiliki data yang terkait dengannya.
-
Penanda hapus tidak terkait dengan nilai access control list (ACL).
-
Jika Anda mengeluarkan permintaan
GET
untuk penanda hapus, permintaanGET
tidak mengambil apa pun karena penanda hapus tidak memiliki data. Khususnya, ketika permintaanGET
Anda tidak menentukanversionId
, Anda mendapatkan pesan kesalahan 404 (Tidak Ditemukan).
Penanda hapus menambah sedikit biaya penyimpanan di Amazon S3. Ukuran penyimpanan penanda hapus sama dengan ukuran nama kunci dari penanda hapus. Nama kunci adalah deretan karakter Unicode. Pengkodean UTF -8 untuk nama kunci menambahkan 1-4 byte penyimpanan ke bucket Anda untuk setiap karakter dalam nama. Penanda hapus disimpan di kelas penyimpanan S3 Standard.
Jika ingin mengetahui berapa banyak penanda hapus yang Anda miliki dan kelas penyimpanan apa yang disimpan, Anda dapat menggunakan Lensa Penyimpanan Amazon S3. Untuk informasi selengkapnya, silakan lihat Menilai aktivitas penyimpanan dan penggunaan dengan Lensa Penyimpanan Amazon S3 dan Glosarium metrik Lensa Penyimpanan Amazon S3.
Untuk informasi selengkapnya tentang nama kunci, lihat Menamai objek Amazon S3. Untuk informasi tentang menghapus penanda hapus, lihat Mengelola penanda hapus.
Hanya Amazon S3 yang dapat membuat penanda hapus, dan hal ini dilakukan setiap kali Anda mengirim permintaan DeleteObject
atas objek dalam bucket dengan dukungan Penentuan Versi atau Penentuan Versi ditangguhkan. Objek yang ditentukan dalam permintaan DELETE
tidak benar-benar dihapus. Alih-alih demikian, penanda hapus menjadi versi objek saat ini. Nama kunci objek (atau kunci) menjadi kunci dari penanda hapus.
Saat Anda mendapatkan objek tanpa menentukan versionId
dalam permintaan, jika versinya saat ini adalah penanda hapus, Amazon S3 akan merespons dengan berikut:
-
Pesan kesalahan 404 (Tidak Ditemukan)
-
Header respons,
x-amz-delete-marker: true
Saat Anda mendapatkan objek dengan menentukan versionId
dalam permintaan, jika versi yang ditentukan adalah penanda hapus, Amazon S3 akan merespons dengan berikut:
-
Pesan kesalahan 405 (Metode Tidak Diizinkan)
-
Header respons,
x-amz-delete-marker: true
-
Header respons,
Last-Modified: timestamp
(hanya saat menggunakan HeadObjectatau GetObjectAPIoperasi)
Header respons x-amz-delete-marker: true
memberi tahu bahwa objek yang diakses adalah penanda hapus. Header respons ini tidak pernah mengembalikan false
, karena ketika nilainya adalah false
, versi objek saat ini atau yang ditentukan bukanlah penanda hapus.
Header respons Last-Modified
menyediakan waktu pembuatan penanda hapus.
Gambar berikut menunjukkan bagaimana GetObject
API panggilan pada objek yang versi saat ini adalah penanda hapus merespons dengan kesalahan 404 (Tidak Ditemukan) dan header respons termasuk. x-amz-delete-marker: true
Jika Anda melakukan panggilan GetObject
pada objek dengan menentukan versionId
dalam permintaan Anda, dan jika versi yang ditentukan adalah penanda hapus, Amazon S3 merespons dengan pesan kesalahan 405 (Metode Tidak Diizinkan) dan header respons menyertakan x-amz-delete-marker: true
dan Last-Modified: timestamp
.
Satu-satunya cara untuk membuat daftar penanda hapus (dan versi lain dari suatu objek) adalah dengan menggunakan versions
subsumber daya dalam ListObjectVersionspermintaan. Gambar berikut menunjukkan bahwa a ListObjectsV2 atau ListObjectsrequest tidak mengembalikan objek yang versi saat ini adalah penanda hapus.