Penulisan tingkat kontainer sekali, baca banyak kebijakan (WORM) untuk data blob yang tidak dapat diubah

Kebijakan tulis tingkat kontainer sekali, baca banyak (WORM) adalah jenis kebijakan imutabilitas yang dapat diatur pada tingkat kontainer. Untuk mempelajari selengkapnya tentang penyimpanan yang tidak dapat diubah untuk Azure Blob Storage, lihat Menyimpan data blob penting bisnis dengan penyimpanan yang tidak dapat diubah dalam status tulis sekali, baca banyak (WORM)

Ketersediaan

Kebijakan WORM tingkat kontainer (CLW) tersedia untuk semua kontainer baru dan yang sudah ada. Kebijakan ini didukung untuk akun tujuan umum v2, blob blok premium, v1 tujuan umum (warisan), dan penyimpanan blob (warisan).

Tip

Microsoft merekomendasikan peningkatan akun v1 tujuan umum ke v2 tujuan umum sehingga Anda dapat memanfaatkan lebih banyak fitur. Untuk informasi tentang peningkatan akun penyimpanan v1 serbaguna yang ada, lihat Meningkatkan akun penyimpanan.

Fitur ini didukung untuk akun namespace hierarkis. Jika namespace hierarki diaktifkan, Anda tidak dapat mengganti nama atau memindahkan blob saat blob dalam status tidak dapat diubah. Nama blob dan struktur direktori menyediakan data tingkat kontainer penting yang tidak dapat dimodifikasi setelah kebijakan yang tidak dapat diubah diberlakukan.

Tidak ada proses pengaktifan untuk fitur ini; ini secara otomatis tersedia untuk semua kontainer. Untuk mempelajari selengkapnya tentang cara menetapkan kebijakan pada kontainer baru atau yang sudah ada, lihat Mengonfigurasi kebijakan kekekalan WORM tingkat kontainer.

Penghapusan

Kontainer dengan kumpulan kebijakan WORM tingkat kontainer harus kosong sebelum kontainer dapat dihapus. Jika ada kebijakan yang ditetapkan pada kontainer dengan namespace hierarki diaktifkan, direktori harus kosong sebelum dapat dihapus.

Diagram yang menunjukkan urutan operasi dalam menghapus akun yang memiliki kebijakan WORM tingkat kontainer.

Skenario

Skenario Operasi yang dilarang Perlindungan Blob Perlindungan Kontainer Perlindungan akun
Kontainer dilindungi oleh kebijakan retensi berbasis waktu aktif dengan cakupan kontainer dan/atau pengamanan hukum berlaku Hapus Blob, Letakkan Blob1, Set Blob Metadata, Letakkan Halaman, Set Properti Blob, Rekam jepret Blob,Salin Blob bertambah bertahap, Tambahkan Blok2 Semua blob dalam kontainer tidak dapat diubah untuk konten dan metadata pengguna. Penghapusan kontainer gagal jika kebijakan WORM tingkat kontainer berlaku. Penghapusan akun penyimpanan gagal jika ada kontainer dengan setidaknya satu blob yang ada.
Kontainer dilindungi oleh kebijakan retensi berbasis waktu kedaluwarsa dengan cakupan kontainer dan tidak ada pengamanan hukum yang berlaku Letakkan Blob1, Set Metadata Blob, Letakkan Halaman, Set Properti Blob, Rekam jepret Blob, Salin Blob Bertambah bertahap,Tambahkan Blok2 Operasi penghapusan diperbolehkan. Operasi penimpaan tidak diperbolehkan. Penghapusan kontainer akan gagal jika setidaknya ada satu blob dalam kontainer, terlepas dari apakah kebijakan itu terkunci atau tidak. penghapusan akun penyimpanan gagal jika setidaknya ada satu kontainer dengan kebijakan retensi berbasis waktu yang terkunci.
Kebijakan yang tidak terkunci tidak memberikan perlindungan penghapusan.

1 Azure Storage mengizinkan operasi Letakkan Blob untuk membuat blob baru. Operasi timpa berikutnya pada jalur blob yang ada dalam kontainer yang tidak dapat diubah tidak diizinkan.

2 Operasi Tambahkan Blok hanya diizinkan untuk kebijakan dengan properti allowProtectedAppendWrites atau allowProtectedAppendWritesAll diaktifkan.

Mengizinkan penulisan blob penambahan terlindungi

Blob tambahan terdiri dari blok data dan dioptimalkan untuk operasi penambahan data yang diperlukan oleh skenario audit dan pengelogan. Secara desain, blob penambahan hanya memungkinkan penambahan blok baru ke akhir blob. Terlepas dari imutabilitas, modifikasi, atau penghapusan blok yang ada dalam blob penambahan pada dasarnya tidak diizinkan. Untuk mempelajari selengkapnya tentang blob penambahan, lihat Tentang Blob Penambahan.

Pengaturan properti allowProtectedAppendWrites memungkinkan penulisan blok baru ke blob penambahan sambil mempertahankan perlindungan dan kepatuhan kekekalan. Jika pengaturan ini diaktfikan, Anda dapat membuat blob penambahan secara langsung dalam kontainer yang dilindungi kebijakan, kemudian menambahkan blok baru data ke akhir blob penambahan yang ada menggunakan operasi Append Block. Hanya blok baru yang dapat ditambahkan; blok yang ada tidak dapat diubah atau dihapus. Mengaktifkan pengaturan ini tidak mempengaruhi perilaku imutabilitas dari blob blok atau blob halaman.

Pengaturan properti AllowProtectedAppendWritesAll menyediakan izin yang sama dengan properti allowProtectedAppendWrites dan menambahkan kemampuan untuk menulis blok baru ke blob blok. Blob Storage API tidak menyediakan cara bagi aplikasi untuk melakukan ini secara langsung. Namun, aplikasi dapat menyelesaikan ini dengan menggunakan metode tambahan dan flush yang tersedia di API Data Lake Storage Gen2. Selain itu, properti ini memungkinkan aplikasi Microsoft seperti Azure Data Factory untuk menambahkan blok data dengan menggunakan API internal. Jika beban kerja Anda bergantung pada salah satu alat ini, Anda dapat menggunakan properti ini untuk menghindari kesalahan yang dapat muncul ketika alat tersebut mencoba menambahkan data ke blob.

Blob tambahan tetap dalam keadaan tidak dapat diubah selama periode retensi efektif. Karena data baru dapat ditambahkan di luar pembuatan awal blob tambahan, ada sedikit perbedaan dalam cara periode retensi ditentukan. Retensi efektif adalah perbedaan antara waktu pengubahan terakhir blob penambahan dan interval retensi yang ditentukan pengguna. Demikian juga jika interval retensi diperpanjang, penyimpanan yang tidak dapat diubah akan menggunakan nilai terbaru dari interval penyimpanan yang ditentukan pengguna untuk menghitung periode penyimpanan yang berlaku.

Misalnya, pengguna membuat kebijakan penyimpanan berbasis waktu dengan properti allowProtectedAppendWrites diaktifkan dan interval retensi 90 hari. Blob penambahan, yakni logblob1, dibuat dalam kontainer hari ini. Log baru terus ditambahkan ke blob penambahan selama 10 hari ke depan; sehingga, periode penyimpanan yang berlaku untuk logblob1 adalah 100 hari sejak hari ini (waktu penambahan terakhir + 90 hari).

Kebijakan retensi berbasis waktu yang tidak terkunci memungkinkan pengaturan properti allowProtectedAppendWrites dan AllowProtectedAppendWritesAll diaktifkan dan dinonaktifkan kapan saja. Setelah kebijakan penyimpanan berbasis waktu dikunci, pengaturan properti allowProtectedAppendWrites dan AllowProtectedAppendWritesAll tidak dapat diubah.

Batas

  • Untuk akun penyimpanan, jumlah maksimum kontainer dengan kebijakan yang tidak dapat diubah (retensi berbasis waktu atau penahanan legal) adalah 10.000.

  • Untuk kontainer, jumlah maksimum tag penahanan legal kapan saja adalah 10.

  • Panjang minimum tag penahanan legal adalah tiga karakter alfanumerik. Panjang maksimumnya adalah 23 karakter alfanumerik.

  • Untuk kontainer, maksimum 10 log audit kebijakan penahanan legal dipertahankan selama durasi kebijakan.

Langkah berikutnya