Topik ini menjelaskan cara mengakses versi rahasia. Mengakses versi secret
akan menampilkan konten secret dan metadata tambahan tentang versi secret. Saat mengakses versi secret, Anda menentukan version-id
atau alias jika ditetapkan. Anda juga dapat mengakses secret versi terbaru dengan menentukan "latest"
sebagai versi.
Peran yang diperlukan
Untuk mendapatkan izin yang diperlukan guna mengakses versi secret,
minta administrator untuk memberi Anda
peran IAM Secret Manager Secret Accessor (roles/secretmanager.secretAccessor
) 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.
Mengakses versi secret
Konsol
-
Buka halaman Secret Manager di konsol Google Cloud.
-
Di halaman Secret Manager, klik Nama secret.
-
Di halaman Detail secret, di tabel Versions, temukan versi secret yang akan diakses.
-
Di kolom Tindakan, klik Lihat lainnya
. -
Klik Lihat nilai rahasia dari menu.
-
Anda akan melihat dialog yang menampilkan nilai versi secret. Klik Selesai untuk menyelesaikan prosesnya.
gcloud
Untuk menggunakan Secret Manager di command line, pertama-tama Instal atau upgrade ke Google Cloud CLI versi 378.0.0 atau yang lebih tinggi. 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 secret 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, minta Cloud SDK mencetak respons sebagai enkode base64 dan mendekodenya:
$ gcloud secrets versions access version-id --secret="secret-id" --format='get(payload.data)' | tr '_-' '/+' | base64 -d
C#
Untuk menjalankan kode ini, pertama-tama siapkan lingkungan pengembangan C# 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 menginstal 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.
API
Contoh ini menggunakan curl untuk menunjukkan penggunaan 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 langsung mengakses versi secret tersebut berdasarkan nomor versi adalah operasi yang sangat konsisten.
Operasi lain dalam Secret Manager pada akhirnya akan konsisten. Operasi yang konsisten pada akhirnya biasanya akan bersatu dalam beberapa menit, tetapi mungkin memerlukan beberapa jam.
Penerusan izin IAM pada akhirnya akan konsisten. Artinya, memberikan atau mencabut akses ke secret mungkin tidak langsung berlaku. Untuk mengetahui informasi selengkapnya, lihat Penerapan perubahan akses.
Langkah selanjutnya
- Pelajari cara menetapkan alias ke versi secret.
- Pelajari cara menonaktifkan versi rahasia.
- Pelajari cara menghancurkan versi rahasia.