Pelajari cara membuat dan mengelola secret menggunakan integrasi Secret Manager di Cloud Code.
Untuk mengikuti panduan langkah demi langkah tugas ini langsung di Cloud Shell Editor, klik Pandu saya:
Sebelum memulai
-
Di konsol Google Cloud, buka halaman Pemilih project.
-
Pilih atau buat project Google Cloud.
Di status bar Cloud Code, klik nama project yang aktif.
Di menu Pilihan Cepat yang muncul, pilih New Application, lalu klik Cloud Run Application.
Dari daftar contoh Cloud Run, pilih Python (Flask): Cloud Run.
Pilih folder untuk sampel Anda, lalu klik Buat Aplikasi Baru.
- Klik
Secret Manager dan tunggu beberapa saat untuk dimuat. - Jika diminta untuk mengotorisasi Cloud Shell agar dapat melakukan panggilan API Google Cloud, 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 kode berikut di kolom Name:
my-secret
Di kolom Nilai Rahasia, masukkan:
Hello secret!
Klik Create Secret dan pesan yang menyatakan bahwa rahasia Anda berhasil dibuat akan ditampilkan.
Buka tampilan
Cloud API , lalu pilihSecret Manager API .Tindakan ini akan membuka tab Detail Google Cloud API dengan Secret Manager API sebagai judulnya.
Di bagian Install Client Library, klik tab Python, lalu klik play_arrow Run in terminal. Tindakan ini akan menginstal library klien
google-cloud-secret-manager
.Buka
requirements.txt dan tambahkan baris berikut ke bagian bawah file:google-cloud-secret-manager==2.1.0
Perubahan yang Anda buat akan disimpan secara otomatis.
Untuk mendapatkan nilai terbaru secret Anda, buka
app.py , lalu salin dan 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 kode 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 secret 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 mem-build dan men-deploy layanan Anda ke emulator, pilih
Run on Cloud Run Emulator . - Di tab Run/Debug di 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 di-build, luncurkan aplikasi Anda dengan mengklik link localhost yang muncul di panel
Output . Nilai rahasia Anda ditampilkan di bawah grafik keberhasilan.- Klik tampilan
Secret Manager . - Luaskan rahasiamu dengan mengkliknya.
- Dalam 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 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 lebih baru yang Anda salin. - Klik Cloud Code, lalu luaskan bagian Secret Manager.
- Luaskan rahasiamu dengan mengkliknya.
- Di folder Versions, klik kanan versi bernomor yang ingin Anda nonaktifkan.
- Pilih Disable Version.
- Klik Cloud Code, lalu luaskan bagian Secret Manager.
- Luaskan rahasiamu dengan mengkliknya.
- Di folder Versions, klik kanan versi yang ingin Anda hancurkan.
- Pilih Destroy Version.
- Klik Cloud Code, lalu luaskan bagian Kubernetes.
- Arahkan kursor ke nama cluster Anda, lalu klik open_in_new Buka di konsol Google Cloud.
- Klik Delete, lalu klik Delete.
Buka halaman BigQuery 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 rahasia Cloud Run. Editor telah dilengkapi dengan alat yang diperlukan untuk pengembangan cloud.
Untuk membuat layanan:
Setelah Cloud Shell Editor memuat layanan Anda di ruang kerja baru, lihat filenya dalam
Membuat secret
Dengan Secret Manager, Anda dapat menyimpan, mengelola, dan mengakses secret dengan aman sebagai blob biner atau string teks. Selain itu, layanan ini juga mengelola rahasia Anda, sehingga Anda tidak perlu berurusan dengan mesin virtual atau layanan operasi.
Untuk membuat secret dengan integrasi Secret Manager Cloud Code:
Menambahkan rahasia ke kode Anda
Secret sangat bagus untuk menyimpan informasi konfigurasi, seperti sandi database, kunci API, atau sertifikat TLS yang diperlukan aplikasi saat runtime.
Untuk menambahkan rahasia ke kode Anda:
Menjalankan di emulator Cloud Run
Untuk menguji secret baru Anda, jalankan layanan Cloud Run secara lokal di emulator Cloud Run.
Lihat dan buat versi rahasia baru
Tampilan Secret Manager Cloud Code memperlihatkan rahasia project Anda, beserta tindakan untuk mengelolanya.
Melihat nilai versi secret
Perlu diingat bahwa Anda tidak dapat mengedit versi rahasia. Untuk mengupdate nilai secret, Anda harus membuat versi baru.
Membuat versi secret baru
Nilai secret disimpan dalam versi secret. Rahasia dapat memiliki banyak versi. Hal ini dapat membantu ketika ada perubahan rahasia. Memperbarui secret dengan versi baru berarti Anda tidak perlu memperbarui kode.
latest
.
Melihat dan mengelola secret
Menonaktifkan versi secret
Versi secret diaktifkan secara default setelah pembuatan, yang berarti versi tersebut dapat diakses. Rahasia yang dinonaktifkan tidak dapat diakses, tetapi Anda selalu dapat memulihkan aksesnya kapan saja.
Untuk menonaktifkan versi secret:
Menghancurkan versi rahasia
Jika Anda menghancurkan versi rahasia, versi tersebut tidak dapat diakses. Menghancurkan versi rahasia bersifat permanen.
Pembersihan
Cara menghapus hanya cluster yang Anda buat untuk panduan memulai ini:
Untuk menghapus project Anda (dan resource terkait, termasuk cluster apa pun):