Pelajari cara membuat dan mengelola secret menggunakan integrasi Secret Manager Cloud Code.
Untuk mengikuti panduan langkah demi langkah tugas ini langsung di Cloud Shell Editor, klik Pandu saya:
Sebelum memulai
-
In the Google Cloud console, go to the project selector page.
-
Select or create a Google Cloud project.
Di status bar Cloud Code, klik nama project aktif.
Di menu Pilih Cepat yang muncul, pilih Aplikasi Baru, lalu klik Aplikasi Cloud Run.
Dari daftar sampel Cloud Run, pilih Python (Flask): Cloud Run.
Pilih folder untuk sampel Anda, lalu klik Create New Application.
- Klik
Secret Manager dan tunggu sebentar hingga dimuat. - Jika diminta untuk memberikan otorisasi pada Cloud Shell agar dapat melakukan panggilan Google Cloud API, klik Authorize.
- Klik add
Create Secret . - Jika diminta, pilih project Google Cloud Anda dari pemilih dropdown.
- Jika diminta, aktifkan Secret Manager API.
Di tab Secret Manager - Create Secret yang muncul, masukkan berikut di kolom Name:
my-secret
Di kolom Secret Value, masukkan:
Hello secret!
Klik Buat Secret dan pesan yang menyatakan bahwa secret Anda berhasil dibuat akan muncul.
Buka tampilan
Cloud API , lalu pilihSecret Manager API .Tindakan ini akan membuka tab Detail Google Cloud API dengan Secret Manager API sebagai judul.
Di bagian Install Client Library, klik tab Python dan klik play_arrow Run in terminal. Perintah ini akan menginstal library klien
google-cloud-secret-manager
.Buka
requirements.txt dan tambahkan baris berikut ke bagian bawah file:google-cloud-secret-manager==VERSION_NUMBER
Anda dapat menemukan nomor versi di konsol setelah menjalankan penginstalan pada langkah sebelumnya. Misalnya, konsol dapat menampilkan:
Successfully installed google-cloud-secret-manager-2.23.1
Perubahan yang Anda buat akan disimpan secara otomatis.
Untuk mendapatkan nilai terbaru secret Anda, buka
app.py dan salin lalu tempel fungsi berikut:setelah fungsi hello :def access_secret_version(secret_version_id): """Return the value of a secret's version""" from google.cloud import secretmanager # Create the Secret Manager client. client = secretmanager.SecretManagerServiceClient() # Access the secret version. response = client.access_secret_version(name=secret_version_id) # Return the decoded payload. return response.payload.data.decode('UTF-8')
Untuk memanggil fungsi
access_secret_version
, gantivariabel pesan dengan yang berikut:message = access_secret_version("<SECRET_VERSION_ID>")
Jika Anda masih membuka tab Secret Manager - Create Secret, file_copy Salin ID.
Untuk mendapatkan ID versi rahasia kapan saja, buka
Secret Manager > [SECRET_NAME] > Versions, arahkan kursor ke versi Anda, lalu klik Copy resource ID.Untuk menambahkan ID versi, ganti placeholder
dengan ID versi yang Anda salin.<SECRET_VERSION_ID>
- Luncurkan menu
Cloud Code dari status bar. - Untuk membangun dan men-deploy layanan Anda ke emulator, pilih
Run on Cloud Run Emulator . - Di tab Run/Debug on Cloud Run Emulator yang muncul, klik Run.
Saat menjalankan konfigurasi untuk pertama kalinya, proses ini dapat memerlukan waktu hingga 5 menit. Panel
Output menampilkan progres saat aplikasi Anda di-build dan di-deploy.Setelah aplikasi Anda di-build, luncurkan aplikasi dengan mengklik link localhost yang muncul di panel
Output . Nilai rahasia Anda ditampilkan di bawah grafik keberhasilan.- Klik tampilan
Secret Manager . - Luaskan rahasia Anda dengan mengkliknya.
- Di folder Versions, klik kanan versi bernomor yang ingin Anda lihat nilainya, lalu pilih Show Version Value.
- Klik tampilan
Secret Manager . - Klik kanan nama secret Anda, lalu pilih Create Secret Version.
- Di tab Secret Manager - Create Version yang muncul, masukkan nilai baru, lalu klik Create Version.
- Setelah tab Secret Manager - Create Secret terbuka, klik file_copy Copy di bagian atas untuk menyalin ID.
- Untuk menambahkan ID versi yang lebih baru, ganti versi saat ini yang muncul di variabel
pesan di
app.py dengan ID versi yang lebih baru yang Anda salin. - Klik
Cloud Code, lalu luaskan bagian Secret Manager.
- Luaskan rahasia Anda dengan mengkliknya.
- Di folder Versi, klik kanan versi bernomor yang ingin Anda nonaktifkan.
- Pilih Nonaktifkan Versi.
- Klik
Cloud Code, lalu luaskan bagian Secret Manager.
- Luaskan rahasia Anda dengan mengkliknya.
- Di folder Versi, klik kanan versi yang ingin Anda hapus.
- Pilih Hancurkan Versi.
- Klik
Cloud Code, lalu luaskan bagian Kubernetes.
- Arahkan kursor ke nama cluster Anda, lalu klik open_in_new Open in Google Cloud console.
- Klik Delete, lalu klik Delete.
Buka halaman Project di konsol Google Cloud :
Pilih project yang Anda buat untuk panduan memulai ini, lalu klik Delete.
Ketik project ID untuk mengonfirmasi, lalu klik Shut down.
Tindakan ini akan menghentikan project dan menjadwalkannya untuk dihapus.
Membuat layanan Cloud Run
Gunakan Cloud Shell Editor sebagai lingkungan Anda untuk membuat layanan dan secret Cloud Run. Editor telah dilengkapi dengan alat yang diperlukan untuk pengembangan cloud.
Untuk membuat layanan Anda:
Setelah Cloud Shell Editor memuat layanan Anda di ruang kerja baru, lihat file-nya di
Membuat secret
Secret Manager memungkinkan Anda menyimpan, mengelola, dan mengakses secret dengan aman sebagai blob biner atau string teks. Selain itu, layanan ini mengelola rahasia Anda, yang berarti Anda tidak perlu berurusan dengan mesin virtual atau layanan operasi.
Untuk membuat secret dengan integrasi Secret Manager Cloud Code:
Menambahkan secret ke kode Anda
Secret sangat cocok untuk menyimpan informasi konfigurasi seperti sandi database, kunci API, atau sertifikat TLS yang diperlukan oleh aplikasi saat runtime.
Untuk menambahkan rahasia ke kode Anda:
Menjalankan di emulator Cloud Run
Untuk menguji secret baru, jalankan layanan Cloud Run Anda secara lokal di emulator Cloud Run.
Melihat dan membuat versi secret baru
Tampilan Secret Manager Cloud Code memberi Anda gambaran sekilas tentang secret project Anda, dengan tindakan untuk mengelolanya.
Melihat nilai versi secret
Perhatikan bahwa Anda tidak dapat mengedit versi rahasia. Untuk memperbarui nilai secret, Anda harus membuat versi baru.
Buat versi secret baru
Nilai rahasia disimpan dalam versi rahasia. Rahasia dapat memiliki banyak versi. Hal ini berguna dalam situasi saat secret berubah. Memperbarui rahasia dengan versi baru berarti Anda tidak perlu memperbarui kode.
latest
.
Melihat dan mengelola secret
Menonaktifkan versi secret
Versi secret diaktifkan secara default setelah dibuat, yang berarti versi secret dapat diakses. Secret yang dinonaktifkan tidak dapat diakses, tetapi Anda dapat memulihkan akses ke secret tersebut kapan saja.
Untuk menonaktifkan versi secret:
Menghancurkan versi secret
Saat Anda menghancurkan versi rahasia, versi tersebut tidak dapat diakses. Menghancurkan versi rahasia bersifat permanen.
Pembersihan
Untuk menghapus hanya cluster yang Anda buat untuk panduan memulai ini:
Untuk menghapus project Anda (dan resource terkait, termasuk cluster apa pun):