Topik ini menjelaskan cara mengakses versi secret. Mengakses versi secret akan menampilkan konten secret dan metadata tambahan tentang versi secret. Saat mengakses versi secret, Anda harus menentukan version-id atau alias-nya jika ditetapkan. Anda juga dapat mengakses versi terbaru
secret dengan menentukan "latest"
sebagai versinya.
Peran yang diperlukan
Untuk mendapatkan izin yang diperlukan untuk mengakses versi secret, minta administrator Anda untuk memberi Anda peran IAM Secret Manager Secret Accessor (roles/secretmanager.secretAccessor
) pada suatu secret.
Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses.
Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.
Mengakses versi secret
Konsol
-
Buka halaman Secret Manager di Konsol Google Cloud.
-
Di halaman Secret Manager, klik Name rahasia.
-
Di halaman Secret details, di tabel Versions, temukan versi secret yang akan diakses.
-
Di kolom Tindakan, klik Lihat lainnya
. -
Klik View secret value dari menu.
-
Anda akan melihat dialog yang menunjukkan nilai versi secret. Klik Selesai untuk menyelesaikan.
gcloud
Untuk menggunakan Secret Manager di command line, Instal atau upgrade Google Cloud CLI ke versi 378.0.0 atau yang lebih baru terlebih dahulu. Di Compute Engine atau GKE, Anda harus melakukan autentikasi dengan cakupan cloud-platform.
Mengakses versi secret:
$ gcloud secrets versions access version-id --secret="secret-id"
Mengakses versi rahasia biner:
Untuk menulis byte mentah ke file, gunakan flag --out-file:
$ gcloud secrets versions access version-id --secret="secret-id" --out-file="path/to/secret"
Untuk mendapatkan byte mentah, perintahkan Cloud SDK mencetak respons sebagai berenkode base64 dan melakukan dekode:
$ gcloud secrets versions access version-id --secret="secret-id" --format='get(payload.data)' | tr '_-' '/+' | base64 -d
C#
Untuk menjalankan kode ini, siapkan lingkungan pengembangan C# terlebih dahulu, lalu 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, lalu 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, lalu instal Secret Manager Node.js SDK. Di Compute Engine atau GKE, Anda harus melakukan autentikasi dengan cakupan cloud-platform.
PHP
Untuk menjalankan kode ini, pelajari cara menggunakan PHP di Google Cloud terlebih dahulu 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, lalu 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, lalu instal Secret Manager Ruby SDK. Di Compute Engine atau GKE, Anda harus melakukan autentikasi dengan cakupan cloud-platform.
API
Contoh ini menggunakan curl untuk menunjukkan cara menggunakan API. Anda dapat membuat token akses dengan gcloud auth print-access-token. Di Compute Engine atau GKE, Anda harus melakukan autentikasi dengan cakupan cloud-platform.
$ curl "https://secretmanager.googleapis.com/v1/projects/project-id/secrets/secret-id/versions/version-id:access" \
--request "GET" \
--header "authorization: Bearer $(gcloud auth print-access-token)" \
--header "content-type: application/json"
payload.data
respons adalah konten versi secret yang dienkode base64. Berikut adalah contoh ekstraksi secret menggunakan alat jq
:
$ curl "https://secretmanager.googleapis.com/v1/projects/project-id/secrets/secret-id/versions/version-id:access" \
--request "GET" \
--header "authorization: Bearer $(gcloud auth print-access-token)" \
--header "content-type: application/json" \
| jq -r ".payload.data" | base64 --decode
Konsistensi resource
Di Secret Manager, menambahkan versi secret, lalu segera mengakses versi secret tersebut dengan nomor versi adalah operasi yang sangat konsisten.
Operasi lain dalam Secret Manager pada akhirnya akan konsisten. Operasi yang konsisten pada akhirnya biasanya digabungkan dalam hitungan menit, tetapi mungkin memerlukan waktu beberapa jam.
Menerapkan izin IAM pada akhirnya konsisten. Artinya, pemberian atau pencabutan akses ke secret mungkin tidak akan segera dilakukan. Untuk mengetahui informasi selengkapnya, lihat Proagasi perubahan akses.
Langkah selanjutnya
- Pelajari cara menetapkan alias ke versi secret.
- Pelajari cara menonaktifkan versi secret.
- Pelajari cara menghancurkan versi rahasia.