Halaman ini menjelaskan cara menambahkan anotasi ke secret regional serta cara mengedit dan melihat anotasi ini.
Ringkasan
Anda dapat menggunakan anotasi untuk menyimpan metadata kustom tentang rahasia. Misalnya, Anda mungkin ingin memberi anotasi pada secret dengan jalur tempat secret akan di-mount. Anotasi dapat berguna dengan cara berikut:
-
Untuk mengategorikan secret berdasarkan tujuan, lingkungan (pengembangan, staging, produksi), atau tingkat sensitivitasnya. Hal ini memudahkan penelusuran, pemfilteran, dan pengelolaan secret dalam Secret Manager.
-
Untuk menunjukkan format atau struktur spesifik dari nilai rahasia, yang membantu beban kerja menafsirkannya dengan benar.
-
Untuk memberikan petunjuk tentang cara menggunakan secret atau pertimbangan khusus untuk penanganannya.
Misalnya, jika Anda memiliki secret yang berisi sandi database, Anda dapat menambahkan anotasi seperti berikut:
-
environment:production -
purpose:database_access -
owner:database_team
Anotasi ini memudahkan identifikasi tujuan rahasia, lingkungannya, dan siapa yang bertanggung jawab atas rahasia tersebut. Selain itu, workload yang mengakses rahasia ini dapat menggunakan anotasi untuk mengonfirmasi bahwa workload tersebut menggunakan sandi yang tepat untuk lingkungan produksi.
Anotasi tidak sama dengan label. Label digunakan untuk mengurutkan, memfilter, dan mengelompokkan resource, sedangkan anotasi digunakan untuk menyimpan metadata arbitrer yang tidak mengidentifikasi pada rahasia. Ada batasan karakter dan panjang karakter saat menentukan metadata dalam label. Metadata dalam anotasi dapat berukuran kecil atau besar, terstruktur atau tidak terstruktur, dan dapat menyertakan karakter yang tidak diizinkan oleh label.
Peran yang diperlukan
-
Menambahkan anotasi pada secret dan memperbarui anotasi memerlukan peran Admin Secret Manager (
roles/secretmanager.admin) pada secret, project, folder, atau organisasi. -
Melihat anotasi memerlukan peran Secret Manager Viewer (
roles/secretmanager.viewer) pada rahasia, project, folder, atau organisasi.
Peran Identity and Access Management (IAM) tidak dapat diberikan pada versi rahasia. Lihat Kontrol akses dengan IAM untuk mengetahui informasi selengkapnya.
Menambahkan anotasi ke secret
Anda dapat menambahkan anotasi saat membuat secret baru atau memperbarui secret yang ada. Metadata dalam anotasi disimpan sebagai key-value pair. Untuk menambahkan anotasi, gunakan salah satu metode berikut:
Konsol
-
Di konsol Google Cloud , buka halaman Secret Manager.
-
Di halaman Secret Manager, klik tab Regional secrets, lalu klik Create regional secret.
-
Di halaman Create regional secret, masukkan nama untuk secret di kolom Name.
-
Masukkan nilai untuk secret (misalnya,
abcd1234). Anda juga dapat mengupload file teks yang berisi nilai secret menggunakan opsi Upload file. Tindakan ini akan otomatis membuat versi secret. -
Pilih lokasi tempat Anda ingin menyimpan rahasia regional dari daftar Region.
-
Buka bagian Anotasi, lalu klik Tambahkan anotasi.
-
Masukkan kunci dan nilai yang sesuai.
-
Klik Create secret.
gcloud
Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:
- SECRET_ID: ID secret
- LOCATION: Google Cloud lokasi secret
- KEY: kunci anotasi
- VALUE: nilai yang sesuai dari kunci anotasi
Jalankan perintah berikut:
Linux, macOS, atau Cloud Shell
gcloud secrets create SECRET_ID --location=LOCATION \ --set-annotations=KEY1=VAL1,KEY2=VAL2
Windows (PowerShell)
gcloud secrets create SECRET_ID --location=LOCATION ` --set-annotations=KEY1=VAL1,KEY2=VAL2
Windows (cmd.exe)
gcloud secrets create SECRET_ID --location=LOCATION ^ --set-annotations=KEY1=VAL1,KEY2=VAL2
Respons berisi rahasia dan anotasi.
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- LOCATION: Google Cloud lokasi secret
- PROJECT_ID: Google Cloud project ID
- SECRET_ID: ID secret
- KEY: kunci anotasi
- VALUE: nilai yang sesuai dari kunci anotasi
Metode HTTP dan URL:
PATCH https://secretmanager.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/secrets/SECRET_ID?updateMask=annotations
Meminta isi JSON:
{'annotations': {'KEY1': 'VALUE1', 'KEY2': 'VALUE2' }}
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.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/secrets/SECRET_ID?updateMask=annotations"
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.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/secrets/SECRET_ID?updateMask=annotations" | Select-Object -Expand Content
Anda akan melihat respons JSON seperti berikut:
{
"name": "projects/PROJECT_ID/locations/LOCATION/secrets/SECRET_ID",
"createTime": "2024-09-02T07:14:00.281541Z",
"etag": "\"16211dcd99c386\"",
"annotations": {
"key1": "value1",
"key2": "value2"
}
}
C#
Untuk menjalankan kode ini, siapkan lingkungan pengembangan C# terlebih dahulu dan instal Secret Manager C# SDK. Di Compute Engine atau GKE, Anda harus melakukan autentikasi dengan cakupan cloud-platform.
Go
Untuk menjalankan kode ini, siapkan lingkungan pengembangan Go terlebih dahulu dan instal Secret Manager Go SDK. Di Compute Engine atau GKE, Anda harus melakukan autentikasi dengan cakupan cloud-platform.
Java
Untuk menjalankan kode ini, siapkan lingkungan pengembangan Java terlebih dahulu dan instal Secret Manager Java SDK. Di Compute Engine atau GKE, Anda harus melakukan autentikasi dengan cakupan cloud-platform.
Node.js
Untuk menjalankan kode ini, siapkan lingkungan pengembangan Node.js terlebih dahulu dan instal Secret Manager Node.js SDK. Di Compute Engine atau GKE, Anda harus melakukan autentikasi dengan cakupan cloud-platform.
PHP
Untuk menjalankan kode ini, pertama-tama pelajari cara menggunakan PHP di Google Cloud dan instal Secret Manager PHP SDK. Di Compute Engine atau GKE, Anda harus melakukan autentikasi dengan cakupan cloud-platform.
Python
Untuk menjalankan kode ini, siapkan lingkungan pengembangan Python terlebih dahulu dan instal Secret Manager Python SDK. Di Compute Engine atau GKE, Anda harus melakukan autentikasi dengan cakupan cloud-platform.
Ruby
Untuk menjalankan kode ini, siapkan lingkungan pengembangan Ruby terlebih dahulu dan instal Secret Manager Ruby SDK. Di Compute Engine atau GKE, Anda harus melakukan autentikasi dengan cakupan cloud-platform.
Untuk menambahkan anotasi ke secret yang ada, lihat bagian Mengedit anotasi dalam dokumen ini.
Kunci anotasi memiliki persyaratan berikut:
-
Kunci harus unik untuk rahasia. Anda tidak dapat mengulang kunci dalam secret yang sama.
-
Kunci harus memiliki panjang antara 1 dan 63 karakter.
-
Kunci harus memiliki encoding UTF-8 dengan ukuran maksimum 128 byte.
-
Kunci harus diawali dan diakhiri dengan karakter alfanumerik.
-
Kunci dapat memiliki tanda hubung, garis bawah, dan titik di antara karakter alfanumerik.
-
Total ukuran kunci dan nilai anotasi harus kurang dari 16 KiB.
Mengedit anotasi
Untuk mengedit anotasi, gunakan salah satu metode berikut:
Konsol
-
Di konsol Google Cloud , buka halaman Secret Manager.
-
Di halaman Secret Manager, klik tab Regional secrets.
-
Cari secret dalam daftar, lalu klik menu Tindakan yang terkait dengan secret tersebut. Di menu Tindakan, klik Edit.
-
Di halaman Edit secret, buka bagian Anotasi. Di sini, Anda dapat mengubah nilai anotasi yang ada, menghapus anotasi, atau menambahkan anotasi baru.
-
Setelah Anda melakukan perubahan, klik Perbarui rahasia.
gcloud
Mengedit anotasi yang ada
Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:
- SECRET_ID: ID secret
- LOCATION: Google Cloud lokasi secret
- KEY: kunci anotasi
- VALUE: nilai yang sesuai dari kunci anotasi
Jalankan perintah berikut:
Linux, macOS, atau Cloud Shell
gcloud secrets update SECRET_ID --location=LOCATION --update-annotations= KEY=VAL
Windows (PowerShell)
gcloud secrets update SECRET_ID --location=LOCATION --update-annotations= KEY=VAL
Windows (cmd.exe)
gcloud secrets update SECRET_ID --location=LOCATION --update-annotations= KEY=VAL
Respons mengedit secret dan anotasi.
Menghapus anotasi tertentu
Untuk menghapus anotasi, gunakan perintah berikut:
gcloud secrets update SECRET_ID --location=LOCATION --remove-annotations= KEY=VALMenghapus semua anotasi
Untuk menghapus semua anotasi, gunakan perintah berikut:
gcloud secrets update SECRET_ID --location=LOCATION --clear-annotationsREST
Untuk menghapus semua anotasi, gunakan perintah berikut:
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- LOCATION: Google Cloud lokasi secret
- PROJECT_ID: Google Cloud project ID
- SECRET_ID: ID secret
Metode HTTP dan URL:
PATCH https://secretmanager.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/secrets/SECRET_ID?updateMask=annotations
Meminta isi JSON:
{'annotations': {}}
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.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/secrets/SECRET_ID?updateMask=annotations"
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.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/secrets/SECRET_ID?updateMask=annotations" | Select-Object -Expand Content
Anda akan melihat respons JSON seperti berikut:
{
"name": "projects/PROJECT_ID/locations/LOCATION/secrets/SECRET_ID",
"createTime": "2024-09-02T07:14:00.281541Z",
"etag": "\"16211dd90b37e7\""
}
C#
Untuk menjalankan kode ini, siapkan lingkungan pengembangan C# terlebih dahulu dan instal Secret Manager C# SDK. Di Compute Engine atau GKE, Anda harus melakukan autentikasi dengan cakupan cloud-platform.
Go
Untuk menjalankan kode ini, siapkan lingkungan pengembangan Go terlebih dahulu dan instal Secret Manager Go SDK. Di Compute Engine atau GKE, Anda harus melakukan autentikasi dengan cakupan cloud-platform.
Java
Untuk menjalankan kode ini, siapkan lingkungan pengembangan Java terlebih dahulu dan instal Secret Manager Java SDK. Di Compute Engine atau GKE, Anda harus melakukan autentikasi dengan cakupan cloud-platform.
Node.js
Untuk menjalankan kode ini, siapkan lingkungan pengembangan Node.js terlebih dahulu dan instal Secret Manager Node.js SDK. Di Compute Engine atau GKE, Anda harus melakukan autentikasi dengan cakupan cloud-platform.
PHP
Untuk menjalankan kode ini, pertama-tama pelajari cara menggunakan PHP di Google Cloud dan instal Secret Manager PHP SDK. Di Compute Engine atau GKE, Anda harus melakukan autentikasi dengan cakupan cloud-platform.
Python
Untuk menjalankan kode ini, pertama-tama siapkan lingkungan pengembangan Python dan instal Secret Manager Python SDK. Di Compute Engine atau GKE, Anda harus melakukan autentikasi dengan cakupan cloud-platform.
Ruby
Untuk menjalankan kode ini, siapkan lingkungan pengembangan Ruby terlebih dahulu dan instal Secret Manager Ruby SDK. Di Compute Engine atau GKE, Anda harus melakukan autentikasi dengan cakupan cloud-platform.
Melihat anotasi
Untuk melihat anotasi yang dilampirkan ke rahasia, gunakan salah satu metode berikut:
Konsol
-
Di konsol Google Cloud , buka halaman Secret Manager.
-
Di halaman Secret Manager, klik tab Regional secrets, lalu klik secret yang anotasinya ingin Anda lihat.
-
Halaman detail rahasia akan terbuka. Klik tab Overview. Di sini Anda dapat melihat anotasi yang dilampirkan ke rahasia. Kunci dicantumkan di kolom kiri sedangkan nilai ditampilkan di kolom kanan.
gcloud
Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:
- SECRET_ID: ID secret
- LOCATION: Google Cloud lokasi secret
Jalankan perintah berikut:
Linux, macOS, atau Cloud Shell
gcloud secrets describe SECRET_ID --location=LOCATION
Windows (PowerShell)
gcloud secrets describe SECRET_ID --location=LOCATION
Windows (cmd.exe)
gcloud secrets describe SECRET_ID --location=LOCATION
Respons berisi rahasia dan anotasi.
REST
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- LOCATION: Google Cloud lokasi secret
- PROJECT_ID: Google Cloud project ID
- SECRET_ID: ID secret
Metode HTTP dan URL:
GET https://secretmanager.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/secrets/SECRET_ID
Meminta isi JSON:
{}
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json,
dan jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://secretmanager.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/secrets/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 GET `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://secretmanager.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/secrets/SECRET_ID" | Select-Object -Expand Content
Anda akan melihat respons JSON seperti berikut:
{
"name": "projects/PROJECT_ID/locations/LOCATION/secrets/SECRET_ID",
"createTime": "2024-09-02T07:14:00.281541Z",
"etag": "\"16211dcd99c386\"",
"annotations": {
"key1": "value1",
"key2": "value2"
}
}
C#
Untuk menjalankan kode ini, siapkan lingkungan pengembangan C# terlebih dahulu dan instal Secret Manager C# SDK. Di Compute Engine atau GKE, Anda harus melakukan autentikasi dengan cakupan cloud-platform.
Go
Untuk menjalankan kode ini, siapkan lingkungan pengembangan Go terlebih dahulu dan instal Secret Manager Go SDK. Di Compute Engine atau GKE, Anda harus melakukan autentikasi dengan cakupan cloud-platform.
Java
Untuk menjalankan kode ini, siapkan lingkungan pengembangan Java terlebih dahulu dan instal Secret Manager Java SDK. Di Compute Engine atau GKE, Anda harus melakukan autentikasi dengan cakupan cloud-platform.
Node.js
Untuk menjalankan kode ini, siapkan lingkungan pengembangan Node.js terlebih dahulu dan instal Secret Manager Node.js SDK. Di Compute Engine atau GKE, Anda harus melakukan autentikasi dengan cakupan cloud-platform.
PHP
Untuk menjalankan kode ini, pertama-tama pelajari cara menggunakan PHP di Google Cloud dan instal Secret Manager PHP SDK. Di Compute Engine atau GKE, Anda harus melakukan autentikasi dengan cakupan cloud-platform.
Python
Untuk menjalankan kode ini, pertama-tama siapkan lingkungan pengembangan Python dan instal Secret Manager Python SDK. Di Compute Engine atau GKE, Anda harus melakukan autentikasi dengan cakupan cloud-platform.
Ruby
Untuk menjalankan kode ini, siapkan lingkungan pengembangan Ruby terlebih dahulu dan instal Secret Manager Ruby SDK. Di Compute Engine atau GKE, Anda harus melakukan autentikasi dengan cakupan cloud-platform.