Halaman ini menjelaskan cara menggunakan fitur Penguncian Retensi Objek, termasuk mengaktifkannya untuk bucket dan menetapkan konfigurasi retensi untuk objek dalam bucket.
Peran yang diperlukan
Untuk mendapatkan izin yang diperlukan guna mengaktifkan fitur Object Retention Lock untuk bucket dan menetapkan konfigurasi retensi pada objek, minta administrator untuk memberi Anda peran IAM Storage Admin (roles/storage.admin
) di bucket atau project yang berisi bucket. Peran bawaan ini berisi izin yang diperlukan untuk menetapkan dan mengelola konfigurasi retensi. Untuk melihat izin
yang benar-benar diperlukan, luaskan bagian Izin yang diperlukan:
Izin yang diperlukan
storage.buckets.create
storage.buckets.enableObjectRetention
storage.buckets.get
storage.buckets.list
- Izin ini hanya diperlukan jika Anda berencana menggunakan konsol Google Cloud untuk menjalankan petunjuk di halaman ini.
storage.objects.get
storage.objects.list
- Izin ini hanya diperlukan jika Anda berencana menggunakan konsol Google Cloud untuk menjalankan petunjuk di halaman ini.
storage.objects.overrideUnlockedRetention
- Izin ini hanya diperlukan jika Anda berencana mengunci atau mempersingkat konfigurasi retensi yang ada.
storage.objects.setRetention
storage.objects.update
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus.
Untuk informasi tentang cara memberikan peran pada bucket, lihat Menggunakan IAM dengan bucket. Untuk mengetahui informasi tentang cara memberikan peran pada project, lihat Mengelola akses ke project.
Mengaktifkan retensi objek untuk bucket
Gunakan petunjuk berikut untuk mengizinkan konfigurasi retensi untuk objek di bucket. Jika ingin mengaktifkan konfigurasi retensi objek untuk bucket yang sudah ada, Anda harus mengikuti petunjuk Google Cloud Console.
Konsol
Untuk mengaktifkan konfigurasi retensi objek untuk bucket baru:
- Buat bucket seperti biasa, dan pada langkah Pilih cara melindungi data objek, pilih Retensi (Untuk kepatuhan), lalu Aktifkan retensi objek.
Untuk mengaktifkan konfigurasi retensi objek untuk bucket yang ada:
- Di Konsol Google Cloud, buka halaman Bucket Cloud Storage.
Dalam daftar bucket, klik nama bucket yang ingin Anda aktifkan retensi objeknya.
Pilih tab Protection di dekat bagian atas halaman.
Status retensi objek bucket ditampilkan di bagian Retensi objek.
Di bagian Object retention, klik Object Retention Not Enabled.
Pada dialog yang muncul, klik Konfirmasi.
Command line
Buat bucket seperti biasa, dan sertakan flag --enable-per-object-retention
dalam perintah.
Library klien
C++
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage C++ API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
C#
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage C# API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
Java
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Java API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
Node.js
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Node.js API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
PHP
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage PHP API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
Python
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Python API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
REST API
JSON API
Buat bucket seperti biasa, dan sertakan parameter kueri enableObjectRetention=true
sebagai bagian dari permintaan.
XML API
Buat bucket seperti biasa, dan sertakan header x-goog-bucket-object-lock-enabled: True
sebagai bagian dari permintaan.
Melihat status retensi objek bucket
Untuk melihat apakah konfigurasi retensi dapat ditetapkan untuk objek di bucket:
Konsol
- Di Konsol Google Cloud, buka halaman Bucket Cloud Storage.
Klik nama bucket yang statusnya ingin Anda periksa.
Klik tab Protection.
Status retensi objek bucket ditampilkan di bagian Retensi objek.
Command line
Gunakan perintah gcloud storage buckets describe
dengan
flag --format
:
gcloud storage buckets describe gs://BUCKET_NAME --format="default(per_object_retention)"
Dengan BUCKET_NAME
adalah nama bucket
yang kebijakan retensinya ingin Anda lihat. Contoh, my-bucket
.
Jika berhasil dan kebijakan retensi untuk bucket sudah ada, responsnya akan mirip dengan berikut ini:
per_object_retention: mode: Enabled
Jika berhasil dan kebijakan retensi untuk bucket tidak ada, responsnya akan mirip dengan berikut ini:
null
Library klien
C++
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage C++ API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
Untuk melihat konfigurasi retensi objek bucket, ikuti petunjuk untuk menampilkan metadata bucket dan cari kolom retensi objek dalam respons.C#
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage C# API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
Untuk melihat konfigurasi retensi objek bucket, ikuti petunjuk untuk menampilkan metadata bucket dan cari kolom retensi objek dalam respons.Java
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Java API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
Untuk melihat konfigurasi retensi objek bucket, ikuti petunjuk untuk menampilkan metadata bucket dan cari kolom retensi objek dalam respons.Node.js
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Node.js API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
Untuk melihat konfigurasi retensi objek bucket, ikuti petunjuk untuk menampilkan metadata bucket dan cari kolom retensi objek dalam respons.PHP
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage PHP API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
Untuk melihat konfigurasi retensi objek bucket, ikuti petunjuk untuk menampilkan metadata bucket dan cari kolom retensi objek dalam respons.Python
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Python API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
Untuk melihat konfigurasi retensi objek bucket, ikuti petunjuk untuk menampilkan metadata bucket dan cari kolom retensi objek dalam respons.REST API
JSON API
Menginstal dan melakukan inisialisasi gcloud CLI , yang memungkinkan Anda membuat token akses untuk header
Authorization
.Gunakan
cURL
untuk memanggil JSON API dengan permintaan BucketGET
yang menyertakan kolomobjectRetention
:curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME?fields=objectRetention"
Dengan
BUCKET_NAME
adalah nama bucket yang relevan. Contoh,my-bucket
.
XML API
Menginstal dan melakukan inisialisasi gcloud CLI , yang memungkinkan Anda membuat token akses untuk header
Authorization
.Gunakan
cURL
untuk memanggil XML API dengan permintaan BucketGET
yang dicakup untuk?object-lock
:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/BUCKET_NAME?object-lock"
Dengan
BUCKET_NAME
adalah nama bucket yang relevan. Contoh,my-bucket
.
Menetapkan konfigurasi retensi objek
Untuk menetapkan konfigurasi retensi untuk objek, objek harus disimpan di bucket yang retensi objeknya diaktifkan. Untuk menetapkan konfigurasi retensi untuk objek:
Konsol
- Di Konsol Google Cloud, buka halaman Bucket Cloud Storage.
Dalam daftar bucket, klik nama bucket yang berisi objek yang konfigurasi retensinya ingin Anda tetapkan atau ubah.
Halaman Detail bucket akan terbuka, dan tab Objek akan dipilih.
Buka objek, yang mungkin berada dalam folder.
Klik nama objek.
Halaman Detail objek akan terbuka, yang menampilkan metadata objek.
Di bagian Perlindungan, klik ikon Edit (edit) yang terkait dengan Dari konfigurasi retensi objek.
Panel Edit retensi akan terbuka.
Di bagian Object retention configuration, klik Enabled atau Disabled.
- Jika konfigurasi retensi diaktifkan, pilih tanggal dan waktu untuk konfigurasi di bagian Simpan hingga waktu, lalu klik Tidak terkunci atau Terkunci di bagian Mode retensi.
Klik Konfirmasi.
Command line
Gunakan perintah gcloud storage objects update
dengan
flag yang sesuai. Untuk menambahkan atau mengubah konfigurasi retensi, gunakan
perintah berikut. Perhatikan bahwa Anda juga harus menyertakan flag --override-unlocked-retention
jika mengubah konfigurasi yang ada dengan cara menguncinya atau mempersingkat waktu retensi hingga:
gcloud storage objects update gs://BUCKET_NAME/OBJECT_NAME --retain-until=DATETIME --retention-mode=STATE
Dengan keterangan:
BUCKET_NAME
adalah nama bucket yang relevan. Contoh,my-bucket
.OBJECT_NAME
adalah nama objek yang relevan. Contoh,kitten.png
.DATETIME
adalah tanggal dan waktu paling awal saat objek dapat dihapus. Contoh,2028-02-15T05:30:00Z
.STATE
adalahLocked
atauUnlocked
.
Jika berhasil, responsnya akan terlihat mirip dengan contoh berikut ini:
Updating gs://my-bucket/kitten.png... Completed 1
Untuk menghapus konfigurasi retensi dari objek, gunakan perintah berikut:
gcloud storage objects update gs://BUCKET_NAME/OBJECT_NAME --clear-retention --override-unlocked-retention
Dengan keterangan:
BUCKET_NAME
adalah nama bucket yang relevan. Contoh,my-bucket
.OBJECT_NAME
adalah nama objek yang relevan. Contoh,kitten.png
.
Library klien
C++
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage C++ API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
C#
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage C# API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
Java
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Java API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
Node.js
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Node.js API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
PHP
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage PHP API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
Python
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Python API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
REST API
JSON API
Menginstal dan melakukan inisialisasi gcloud CLI , yang memungkinkan Anda membuat token akses untuk header
Authorization
.Buat file JSON yang berisi informasi berikut:
{ "retention": { "mode": STATE, "retainUntilTime": "DATETIME" } }
Dengan keterangan:
STATE
adalahLocked
atauUnlocked
.DATETIME
adalah tanggal dan waktu paling awal saat objek dapat dihapus. Contoh,2028-02-15T05:30:00Z
.
Gunakan
cURL
untuk memanggil JSON API dengan permintaan ObjekPATCH
:curl -X PATCH --data-binary @JSON_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/o/OBJECT_NAME?overrideUnlockedRetention=BOOLEAN"
Dengan keterangan:
JSON_FILE_NAME
adalah jalur untuk file yang Anda buat di Langkah 2.BUCKET_NAME
adalah nama bucket yang relevan. Contoh,my-bucket
.OBJECT_NAME
adalah nama objek yang dienkode ke URL yang relevan. Misalnya,pets/kitten.png
, dienkode URL sebagaipets%2Fkitten.png
.BOOLEAN
harus berupatrue
jika permintaan mempersingkat, menghapus, atau mengunci konfigurasi retensi yang ada. Jika tidak, parameteroverrideUnlockedRetention
dapat sepenuhnya dikecualikan dari permintaan.
XML API
Menginstal dan melakukan inisialisasi gcloud CLI , yang memungkinkan Anda membuat token akses untuk header
Authorization
.Buat file XML yang berisi informasi berikut:
<Retention> <Mode> STATE </Mode> <RetainUntilDate> DATETIME </RetainUntilDate> </Retention>
Dengan keterangan:
STATE
adalahGOVERNANCE
atauCOMPLIANCE
.DATETIME
adalah tanggal dan waktu paling awal saat objek dapat dihapus. Contoh,2028-02-15T05:30:00Z
.
Gunakan
cURL
untuk memanggil XML API dengan permintaan ObjekPUT
yang dicakup untuk?retention
:curl -X PUT --data-binary @XML_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "x-goog-bypass-governance-retention: BOOLEAN" \ "https://storage.googleapis.com/BUCKET_NAME/OBJECT_NAME?retention"
Dengan keterangan:
XML_FILE_NAME
adalah jalur untuk file XML yang Anda buat pada Langkah 2.BOOLEAN
harus berupatrue
jika permintaan mempersingkat, menghapus, atau mengunci konfigurasi retensi yang ada. Jika tidak, headerx-goog-bypass-governance-retention
dapat sepenuhnya dikecualikan dari permintaan.BUCKET_NAME
adalah nama bucket yang relevan. Contoh,my-bucket
.OBJECT_NAME
adalah nama objek yang dienkode ke URL yang relevan. Misalnya,pets/kitten.png
, dienkode URL sebagaipets%2Fkitten.png
.
Melihat konfigurasi retensi objek
Untuk melihat konfigurasi retensi yang ditetapkan pada objek, jika ada:
Konsol
- Di Konsol Google Cloud, buka halaman Bucket Cloud Storage.
Dalam daftar bucket, klik nama bucket yang berisi objek yang konfigurasi retensinya ingin Anda lihat.
Halaman Detail bucket akan terbuka, dan tab Objek akan dipilih.
Buka objek, yang mungkin berada dalam folder.
Klik nama objek.
Halaman Detail objek akan terbuka, yang menampilkan metadata objek. Informasi tentang konfigurasi retensi yang dimiliki objek ditampilkan di bagian Perlindungan.
Command line
Gunakan perintah gcloud storage objects describe
dengan
flag --format
:
gcloud storage objects describe gs://BUCKET_NAME/OBJECT_NAME --format="default(retention_settings)"
Dengan keterangan:
BUCKET_NAME
adalah nama bucket yang relevan. Contoh,my-bucket
.OBJECT_NAME
adalah nama objek yang relevan. Contoh,kitten.png
.
Jika berhasil dan konfigurasi retensi untuk objek sudah ada, responsnya akan mirip dengan berikut ini:
retention_settings: mode: Unlocked retainUntilTime: '2028-11-30T14:11:14+00:00'
Jika berhasil dan konfigurasi retensi tidak ada untuk objek, responsnya akan mirip dengan berikut ini:
null
Library klien
C++
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage C++ API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
Untuk melihat konfigurasi retensi objek, ikuti petunjuk untuk menampilkan metadata objek dan cari kolom retensi dalam respons.C#
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage C# API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
Untuk melihat konfigurasi retensi objek, ikuti petunjuk untuk menampilkan metadata objek dan cari kolom retensi dalam respons.Java
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Java API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
Untuk melihat konfigurasi retensi objek, ikuti petunjuk untuk menampilkan metadata objek dan cari kolom retensi dalam respons.Node.js
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Node.js API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
Untuk melihat konfigurasi retensi objek, ikuti petunjuk untuk menampilkan metadata objek dan cari kolom retensi dalam respons.PHP
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage PHP API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
Untuk melihat konfigurasi retensi objek, ikuti petunjuk untuk menampilkan metadata objek dan cari kolom retensi dalam respons.Python
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Python API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
Untuk melihat konfigurasi retensi objek, ikuti petunjuk untuk menampilkan metadata objek dan cari kolom retensi dalam respons.REST API
JSON API
Menginstal dan melakukan inisialisasi gcloud CLI , yang memungkinkan Anda membuat token akses untuk header
Authorization
.Gunakan
cURL
untuk memanggil JSON API dengan permintaan ObjekGET
yang menyertakan kolomretention
:curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/OBJECT_NAME?fields=retention"
Dengan keterangan:
BUCKET_NAME
adalah nama bucket yang relevan. Contoh,my-bucket
.OBJECT_NAME
adalah nama objek yang relevan. Contoh,kitten.png
.
XML API
Menginstal dan melakukan inisialisasi gcloud CLI , yang memungkinkan Anda membuat token akses untuk header
Authorization
.Gunakan
cURL
untuk memanggil XML API dengan permintaan ObjekGET
yang dicakup untuk?retention
:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/BUCKET_NAME/OBJECT_NAME?retention"
Dengan keterangan:
BUCKET_NAME
adalah nama bucket yang relevan. Contoh,my-bucket
.OBJECT_NAME
adalah nama objek yang relevan. Contoh,kitten.png
.
Langkah selanjutnya
- Pelajari konfigurasi retensi lebih lanjut.
- Pelajari fitur lain yang melindungi data Cloud Storage Anda.
- Pelajari Object Lifecycle Management, yang dapat otomatis menghapus file setelah mencapai periode retensi datanya.