Halaman ini menjelaskan cara menyiapkan pemusnahan versi secret yang tertunda, memperbarui atau menghapus durasi penundaan pemusnahan, dan memulihkan versi secret yang dijadwalkan untuk dihancurkan.
Saat Anda menghancurkan versi secret, materi secret akan segera dihancurkan dan secara permanen. Sebagai Admin Secret Manager, Anda dapat menyiapkan penghancuran versi secret yang tertunda sehingga versi secret tidak langsung dihancurkan setelah permintaan dan tetap dapat dipulihkan selama durasi yang dapat dikonfigurasi.
Jika pemusnahan tertunda diaktifkan pada secret dan Anda menghancurkan versi secret, hal berikut akan terjadi:
- Versi dinonaktifkan, sehingga mencegah penggunaannya.
- Sistem menjadwalkan versi untuk dihancurkan secara permanen pada akhir periode penundaan.
- Setelah periode penundaan berakhir, versi secret akan dihancurkan secara permanen dan tidak dapat dipulihkan.
Manfaat
Fitur ini memberikan manfaat berikut:
Lapisan perlindungan tambahan terhadap penghancuran materi rahasia kritis yang tidak disengaja atau berbahaya. Setiap pengguna dengan peran Secret Manager Secret Version Manager dapat menghancurkan versi secret. Tindakan ini tidak dapat dibatalkan. Dengan menyiapkan pemusnahan tertunda, Anda dapat mencegah pemusnahan versi secret secara langsung. Anda dapat memberikan akses minimum kepada pengguna yang diperlukan untuk mengelola siklus proses versi secret karena Anda dapat memantau dan mencegah pemusnahan data sensitif yang tidak disengaja.
Menghancurkan versi secret akan memicu notifikasi SECRET_VERSION_DESTROY_SCHEDULED ke topik Pub/Sub yang dikonfigurasi pada secret. Sebagai Admin Secret Manager, Anda dapat membatalkan pemusnahan terjadwal dan memulihkan versi secret dengan mengaktifkan atau menonaktifkan versi secret.
Sebelum memulai
Enable the Secret Manager API.
Menyiapkan autentikasi.
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
REST
Untuk menggunakan contoh REST API di halaman ini dalam lingkungan pengembangan lokal, gunakan kredensial yang Anda berikan ke gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Untuk informasi selengkapnya, lihat Melakukan autentikasi untuk menggunakan REST dalam dokumentasi autentikasi Google Cloud.
Peran yang diperlukan
Untuk mendapatkan izin yang diperlukan guna menyiapkan pemusnahan versi secret yang tertunda, minta administrator untuk memberi Anda peran IAM Secret Manager Admin (
roles/secretmanager.admin
) pada secret. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.
Menyiapkan penghapusan tertunda
Anda dapat mengaktifkan penghapusan versi secret yang tertunda saat membuat secret atau saat memperbarui secret.
Konsol
Di konsol Google Cloud, buka halaman Secret Manager.
Ikuti langkah-langkah yang diperlukan untuk membuat secret.
Buka bagian Menunda pemusnahan versi secret.
Centang kotak Set duration for delayed destruction.
Di kolom Destruction delay duration, masukkan durasi dalam hari. Nilai minimum yang dapat Anda masukkan adalah 1 hari, sedangkan nilai maksimumnya adalah 1.000 hari.
Klik Buat secret.
Untuk mengaktifkan fitur ini pada secret yang ada, buka halaman Edit secret, lalu konfigurasikan durasi penundaan pemusnahan.
gcloud
Untuk mengonfigurasi durasi penundaan pemusnahan pada secret, gunakan perintah gcloud secrets create.
Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:
- SECRET_ID: ID secret atau ID yang sepenuhnya memenuhi syarat untuk secret.
- TTL_DURATION: durasi penundaan penghancuran untuk versi secret. Anda dapat memasukkan durasi dalam format apa pun, misalnya, hari, jam, atau detik. Durasi minimum yang diperlukan adalah 1 hari, sedangkan durasi maksimum dapat ditetapkan ke 1.000 hari.
Jalankan perintah berikut:
Linux, macOS, atau Cloud Shell
gcloud secrets create SECRET_ID --version-destroy-ttl=TTL_DURATION
Windows (PowerShell)
gcloud secrets create SECRET_ID --version-destroy-ttl=TTL_DURATION
Windows (cmd.exe)
gcloud secrets create SECRET_ID --version-destroy-ttl=TTL_DURATION
Respons berisi secret yang baru dibuat.
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: project ID Google Cloud.
- SECRET_ID: ID secret atau ID yang sepenuhnya memenuhi syarat untuk secret.
- TTL_DURATION: durasi penundaan penghancuran untuk versi secret. Masukkan durasi dalam detik. Perhatikan bahwa durasi minimum yang diperlukan adalah 1 hari, sedangkan durasi maksimum dapat ditetapkan ke 1.000 hari.
Metode HTTP dan URL:
POST https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets?secretId=SECRET_ID
Isi JSON permintaan:
{"replication": {"automatic": {}}, "version_destroy_ttl":"TTL_DURATION"}
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets?secretId=SECRET_ID"PowerShell
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets?secretId=SECRET_ID" | Select-Object -Expand ContentAnda akan melihat respons JSON seperti berikut:
{ "name":"projects/PROJECT_ID/secrets/SECRET_ID", "replication":{ "automatic":{ } }, "createTime":"2023-10-16T17:10:16.345401Z", "etag":"\"1607d90ee3d84c\"", "versionDestroyTtl":"TTL_DURATION" }
Penghancuran tertunda tidak berlaku dalam skenario berikut:
- Saat secret dihapus, semua materi secret dan versi secret terkait akan langsung dihapus.
- Jika tanggal habis masa berlaku ditetapkan pada secret dan secret berakhir masa berlakunya, semua versi secret akan segera dihancurkan meskipun pemusnahan tertunda diaktifkan pada secret.
Memperbarui durasi penundaan pemusnahan
Konsol
Di konsol Google Cloud, buka halaman Secret Manager.
Edit secret Anda menggunakan salah satu opsi berikut:
- Klik Tindakan lainnya yang terkait dengan secret yang ingin Anda edit, lalu pilih Edit dari menu.
- Klik nama secret untuk membuka halaman Detail secret. Di halaman Detail secret, klik Edit secret.
Buka bagian Menunda pemusnahan versi secret.
Di kolom Destruction delay duration, masukkan durasi yang diperbarui.
Klik Update Secret.
gcloud
Untuk memperbarui durasi penundaan pemusnahan, gunakan perintah gcloud secrets update.
Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:
- SECRET_ID: ID secret atau ID yang memenuhi syarat sepenuhnya untuk secret
- TTL_DURATION: durasi penundaan penghancuran untuk versi secret
Jalankan perintah berikut:
Linux, macOS, atau Cloud Shell
gcloud secrets update SECRET_ID --version-destroy-ttl=TTL_DURATION
Windows (PowerShell)
gcloud secrets update SECRET_ID --version-destroy-ttl=TTL_DURATION
Windows (cmd.exe)
gcloud secrets update SECRET_ID --version-destroy-ttl=TTL_DURATION
Respons berisi secret yang baru dibuat.
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: project ID Google Cloud
- SECRET_ID: ID secret atau ID yang memenuhi syarat sepenuhnya untuk secret
- TTL_DURATION: durasi penundaan penghancuran untuk versi secret
Metode HTTP dan URL:
PATCH https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID?updateMask=version_destroy_ttl
Isi JSON permintaan:
{ "version_destroy_ttl":"TTL_DURATION" }
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID?updateMask=version_destroy_ttl"PowerShell
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID?updateMask=version_destroy_ttl" | Select-Object -Expand ContentAnda akan melihat respons JSON seperti berikut:
{ "name":"projects/PROJECT_ID/secrets/SECRET_ID", "replication":{ "automatic":{ } }, "createTime":"2023-10-16T17:10:16.345401Z", "etag":"\"1607d90ee3d84c\"", "versionDestroyTtl":"TTL_DURATION" }
Versi secret yang terpengaruh oleh durasi penundaan pemusnahan bergantung pada hal berikut:
- Saat pemusnahan tertunda ditetapkan untuk pertama kalinya pada secret, durasi penundaan pemusnahan akan memengaruhi semua versi secret yang aktif (diaktifkan dan dinonaktifkan).
- Saat durasi penundaan pemusnahan diperbarui atau dihapus, perubahan hanya akan ditampilkan pada versi secret baru tempat tindakan pemusnahan dicoba. Versi secret yang sudah dijadwalkan untuk dihancurkan akan terus dihancurkan pada waktu pemusnahan yang dijadwalkan.
Menonaktifkan penghancuran tertunda
Konsol
Di konsol Google Cloud, buka halaman Secret Manager.
Edit secret Anda menggunakan salah satu opsi berikut:
- Klik Tindakan lainnya yang terkait dengan secret yang ingin Anda edit, lalu pilih Edit dari menu.
- Klik nama secret untuk membuka halaman Detail secret. Di halaman Detail secret, klik Edit secret.
Buka bagian Menunda pemusnahan versi secret.
Hapus centang pada kotak Set duration for delayed destruction.
Klik Update Secret.
gcloud
Untuk menghapus durasi penundaan pemusnahan, gunakan perintah gcloud secrets update.
Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:
- SECRET_ID: ID secret atau ID yang memenuhi syarat sepenuhnya untuk secret
Jalankan perintah berikut:
Linux, macOS, atau Cloud Shell
gcloud secrets update SECRET_ID --remove-version-destroy-ttl
Windows (PowerShell)
gcloud secrets update SECRET_ID --remove-version-destroy-ttl
Windows (cmd.exe)
gcloud secrets update SECRET_ID --remove-version-destroy-ttl
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: project ID Google Cloud
- SECRET_ID: ID secret atau ID yang memenuhi syarat sepenuhnya untuk secret
Metode HTTP dan URL:
PATCH https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID?updateMask=version_destroy_ttl
Isi JSON permintaan:
{}
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID?updateMask=version_destroy_ttl"PowerShell
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID?updateMask=version_destroy_ttl" | Select-Object -Expand ContentAnda akan melihat respons JSON seperti berikut:
{ "name":"projects/PROJECT_ID/secrets/SECRET_ID", "replication":{ "automatic":{ } }, "createTime":"2023-10-16T17:10:16.345401Z", "etag":"\"1607d90ee3d84c\"" }
Menguji penghancuran versi secret yang tertunda
Konsol
Di konsol Google Cloud, buka halaman Secret Manager.
Klik nama secret. Halaman Secret details akan muncul.
Di halaman Detail secret, di tabel Versi, pilih versi secret.
Di kolom Tindakan, klik
Lihat lainnya, lalu klik Hapus.Pada dialog yang muncul, klik Jadwalkan penghapusan versi yang dipilih.
gcloud
Untuk menghancurkan versi secret, gunakan perintah gcloud secrets versions destroy.
Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:
- SECRET_VERSION_ID: ID versi atau ID yang memenuhi syarat sepenuhnya untuk versi
- SECRET_ID: ID secret atau ID yang memenuhi syarat sepenuhnya untuk secret
Jalankan perintah berikut:
Linux, macOS, atau Cloud Shell
gcloud secrets versions destroy SECRET_VERSION_ID --secret=SECRET_ID
Windows (PowerShell)
gcloud secrets versions destroy SECRET_VERSION_ID --secret=SECRET_ID
Windows (cmd.exe)
gcloud secrets versions destroy SECRET_VERSION_ID --secret=SECRET_ID
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: project ID Google Cloud
- SECRET_ID: ID secret atau ID yang memenuhi syarat sepenuhnya untuk secret
- VERSION_ID: ID versi atau ID yang memenuhi syarat sepenuhnya untuk versi
Metode HTTP dan URL:
POST https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID/versions/VERSION_ID:destroy
Isi JSON permintaan:
{}
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID/versions/VERSION_ID:destroy"PowerShell
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID/versions/VERSION_ID:destroy" | Select-Object -Expand ContentAnda akan melihat respons JSON seperti berikut:
{ "name":"projects/PROJECT_ID/secrets/SECRET_ID/versions/VERSION_ID", "createTime":"2023-10-16T17:21:55.920036Z", "state":"DISABLED", "replicationStatus":{ "automatic":{ } }, "etag":"\"1607d8b2fc1cf4\"", "scheduledDestroyTime":"2023-10-16T17:26:57.459395960Z" }
Versi secret akan segera dinonaktifkan dan dijadwalkan untuk dihancurkan setelah masa berlaku penundaan pemusnahan berakhir. Anda dapat melihat tanggal dan waktu yang tepat saat versi akan dihapus di kolom Dijadwalkan untuk dihapus pada di tabel Versi.
Memulihkan versi secret
Anda dapat memulihkan versi secret yang dijadwalkan untuk dihancurkan dengan mengaktifkan atau menonaktifkan versi secret.
Mengaktifkan versi secret yang dijadwalkan untuk dihancurkan
Konsol
Di konsol Google Cloud, buka halaman Secret Manager.
Klik nama secret. Halaman Secret details akan muncul.
Di halaman Detail secret, pada tabel Versions, pilih versi secret yang dijadwalkan untuk dihancurkan.
Di kolom Tindakan, klik
Lihat lainnya, lalu klik Aktifkan.Pada dialog yang muncul, klik Aktifkan versi yang dipilih.
gcloud
Untuk mengaktifkan versi secret yang dijadwalkan untuk dihancurkan, gunakan perintah gcloud secrets versions enable.
Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:
- SECRET_VERSION_ID: ID versi atau ID yang memenuhi syarat sepenuhnya untuk versi
- SECRET_ID: ID secret atau ID yang memenuhi syarat sepenuhnya untuk secret
Jalankan perintah berikut:
Linux, macOS, atau Cloud Shell
gcloud secrets versions enable SECRET_VERSION_ID --secret=SECRET_ID
Windows (PowerShell)
gcloud secrets versions enable SECRET_VERSION_ID --secret=SECRET_ID
Windows (cmd.exe)
gcloud secrets versions enable SECRET_VERSION_ID --secret=SECRET_ID
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: project ID Google Cloud
- SECRET_ID: ID secret atau ID yang memenuhi syarat sepenuhnya untuk secret
- VERSION_ID: ID versi atau ID yang memenuhi syarat sepenuhnya untuk versi
Metode HTTP dan URL:
POST https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID/versions/VERSION_ID:enable
Isi JSON permintaan:
{}
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID/versions/VERSION_ID:enable"PowerShell
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID/versions/VERSION_ID:enable" | Select-Object -Expand ContentAnda akan melihat respons JSON seperti berikut:
{ "name": "projects/PROJECT_ID/secrets/SECRET_ID/versions/VERSION_ID", "createTime": "2024-09-04T06:41:57.859674Z", "state": "ENABLED", "etag": "\"1621457b3c1459\"" }
Menonaktifkan versi secret yang dijadwalkan untuk dimusnahkan
Konsol
Di konsol Google Cloud, buka halaman Secret Manager.
Klik nama secret. Halaman Secret details akan muncul.
Di halaman Detail secret, pada tabel Versions, pilih versi secret yang dijadwalkan untuk dihancurkan.
Di kolom Tindakan, klik
Lihat lainnya, lalu klik Nonaktifkan.Pada dialog yang muncul, klik Nonaktifkan versi yang dipilih.
gcloud
Untuk menonaktifkan versi secret yang dijadwalkan untuk dihancurkan, gunakan perintah gcloud secrets versions disable.
Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:
- SECRET_VERSION_ID: ID versi atau ID yang memenuhi syarat sepenuhnya untuk versi
- SECRET_ID: ID secret atau ID yang memenuhi syarat sepenuhnya untuk secret
Jalankan perintah berikut:
Linux, macOS, atau Cloud Shell
gcloud secrets versions disable SECRET_VERSION_ID --secret=SECRET_ID
Windows (PowerShell)
gcloud secrets versions disable SECRET_VERSION_ID --secret=SECRET_ID
Windows (cmd.exe)
gcloud secrets versions disable SECRET_VERSION_ID --secret=SECRET_ID
Respons berisi versi secret yang dinonaktifkan.
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: project ID Google Cloud
- SECRET_ID: ID secret atau ID yang memenuhi syarat sepenuhnya untuk secret
- VERSION_ID: ID versi atau ID yang memenuhi syarat sepenuhnya untuk versi
Metode HTTP dan URL:
POST https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID/versions/VERSION_ID:disable
Isi JSON permintaan:
{}
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID/versions/VERSION_ID:disable"PowerShell
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID/versions/VERSION_ID:disable" | Select-Object -Expand ContentAnda akan melihat respons JSON yang mirip dengan berikut ini:
{ "name":"projects/PROJECT_ID/secrets/SECRET_ID/versions/VERSION_ID", "createTime":"2023-10-16T17:21:55.920036Z", "state":"DISABLED", "replicationStatus":{ "automatic":{ } }, "etag":"\"1607d8b3e8e1bc\"" }
Langkah selanjutnya
- Pelajari cara memastikan integritas data.
- Pelajari praktik terbaik.
Kecuali dinyatakan lain, konten di halaman ini dilisensikan berdasarkan Lisensi Creative Commons Attribution 4.0, sedangkan contoh kode dilisensikan berdasarkan Lisensi Apache 2.0. Untuk mengetahui informasi selengkapnya, lihat Kebijakan Situs Google Developers. Java adalah merek dagang terdaftar dari Oracle dan/atau afiliasinya.
Terakhir diperbarui pada 2024-12-21 UTC.