Membuat dan mengelola secret dengan Cloud Code

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:

Pandu saya


Sebelum memulai

  1. In the Google Cloud console, go to the project selector page.

    Go to project selector

  2. Select or create a Google Cloud project.

  3. Instal Git agar Cloud Code dapat melakukan operasi Git, seperti meng-clone contoh.
  4. Instal plugin Cloud Code jika Anda belum melakukannya.

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:

  1. Di status bar Cloud Code, klik nama project yang aktif.

    Nama project aktif di status bar

  2. Di menu Pilih Cepat yang muncul, pilih klik Aplikasi Baru, lalu klik Aplikasi Cloud Run.

  3. Dari daftar contoh Cloud Run, pilih Python (Flask): Cloud Run.

  4. Pilih folder untuk contoh Anda, lalu klik Create New Application.

Setelah Cloud Shell Editor memuat layanan Anda di ruang kerja baru, lihat file-nya di tampilan penjelajah.

Membuat secret

Secret Manager memungkinkan Anda menyimpan, mengelola, dan mengakses secret dengan aman sebagai blob biner atau string teks. Selain itu, layanan ini mengelola secret Anda, yang berarti Anda tidak perlu menangani mesin virtual atau layanan operasi.

Untuk membuat secret dengan integrasi Secret Manager Cloud Code:

  1. Klik Secret Manager dan tunggu beberapa saat hingga dimuat.
  2. Jika diminta untuk memberikan otorisasi kepada Cloud Shell agar dapat melakukan panggilan Google Cloud API, klik Authorize.
  3. Klik add Create Secret.
  4. Jika diminta, pilih project Google Cloud Anda dari pemilih dropdown.
  5. Jika diminta, aktifkan Secret Manager API.
  6. Di tab Secret Manager - Create Secret yang muncul, masukkan hal berikut di kolom Name:

    my-secret
    
  7. Di kolom Secret Value, masukkan:

    Hello secret!
    
  8. Klik Buat Secret dan pesan bahwa secret Anda berhasil dibuat akan muncul.

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 secret ke kode Anda:

  1. Buka tampilan Cloud API, lalu pilih Secret Manager API.

    Tindakan ini akan membuka tab Detail Google Cloud API dengan Secret Manager API sebagai judul.

  2. 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.

  3. 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.

  4. Untuk mendapatkan nilai secret terbaru, 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')
    
    
  5. Untuk memanggil fungsi access_secret_version, ganti variabel pesan dengan yang berikut:

    message = access_secret_version("<SECRET_VERSION_ID>")
    
  6. Jika Anda masih membuka tab Secret Manager - Create Secret, file_copy Salin ID.

    Untuk mendapatkan ID versi secret kapan saja, buka Pengelola Secret > [SECRET_NAME] > Versi, arahkan kursor ke versi Anda, lalu klik Salin ID resource.

  7. Untuk menambahkan ID versi, ganti placeholder <SECRET_VERSION_ID> dengan ID versi yang disalin.

Menjalankan di emulator Cloud Run

Untuk menguji secret baru, jalankan layanan Cloud Run secara lokal di emulator Cloud Run.

  1. Luncurkan menu Cloud Code dari status bar.
  2. Untuk mem-build dan men-deploy layanan ke emulator, pilih Run on Cloud Run Emulator.
  3. Di tab Run/Debug on Cloud Run Emulator yang muncul, klik Run.
  4. 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.

  5. Setelah aplikasi di-build, luncurkan aplikasi dengan mengklik link localhost yang muncul di panel Output. Nilai secret Anda ditampilkan di bawah gambar keberhasilan.

Melihat dan membuat versi secret baru

Tampilan Secret Manager Cloud Code memberi Anda tampilan sekilas tentang secret project, dengan tindakan untuk mengelolanya.

Melihat nilai versi secret

  1. Klik tampilan Secret Manager.
  2. Luaskan secret Anda dengan mengkliknya.
  3. Di folder Versions, klik kanan versi bernomor yang ingin Anda lihat nilainya, lalu pilih Show Version Value.

Perhatikan bahwa Anda tidak dapat mengedit versi secret. Untuk memperbarui nilai secret, Anda harus membuat versi baru.

Membuat versi secret baru

Nilai rahasia disimpan dalam versi rahasia. Rahasia dapat memiliki banyak versi. Hal ini berguna dalam situasi saat secret berubah. Memperbarui secret dengan versi baru berarti Anda tidak perlu memperbarui kode.

  1. Klik tampilan Secret Manager.
  2. Klik kanan nama secret Anda, lalu pilih Create Secret Version.
  3. Di tab Secret Manager - Create Version yang muncul, masukkan nilai baru, lalu klik Create Version.
  4. Setelah tab Secret Manager - Create Secret terbuka, klik file_copy Copy untuk menyalin ID.
  5. Untuk menambahkan ID versi yang lebih baru, ganti versi saat ini yang menampilkan variabel pesan di app.py dengan ID versi yang lebih baru yang Anda salin.

Jika Anda selalu ingin kode menggunakan versi terbaru, ganti nomor versi di akhir ID versi dengan latest.

Melihat dan mengelola secret

Menonaktifkan versi secret

Versi secret diaktifkan secara default setelah pembuatan, yang berarti versi tersebut dapat diakses. Secret yang dinonaktifkan tidak dapat diakses, tetapi Anda dapat memulihkan akses ke secret tersebut kapan saja.

Untuk menonaktifkan versi secret:

  1. Klik Cloud Code, lalu luaskan bagian Secret Manager.
  2. Luaskan secret Anda dengan mengkliknya.
  3. Di folder Versions, klik kanan versi bernomor yang ingin Anda nonaktifkan.
  4. Pilih Nonaktifkan Versi.

Menghancurkan versi secret

Jika Anda menghancurkan versi rahasia, versi tersebut tidak dapat diakses. Penghancuran versi secret bersifat permanen.

  1. Klik Cloud Code, lalu luaskan bagian Secret Manager.
  2. Luaskan secret Anda dengan mengkliknya.
  3. Di folder Versions, klik kanan versi yang ingin Anda hapus.
  4. Pilih Destroy Version.

Pembersihan

Untuk menghapus hanya cluster yang Anda buat untuk panduan memulai ini:

  1. Klik Cloud Code, lalu luaskan bagian Kubernetes.
  2. Arahkan kursor ke nama cluster, lalu klik open_in_new Buka di konsol Google Cloud.
  3. Klik Delete, lalu klik Delete.

Untuk menghapus project Anda (dan resource terkait, termasuk cluster):

  1. Buka halaman BigQuery di konsol Google Cloud.

    Buka halaman Project

  2. Pilih project yang Anda buat untuk panduan memulai ini, lalu klik Delete.

  3. Ketik project ID untuk mengonfirmasi, lalu klik Shut down.

    Tindakan ini akan menghentikan project dan menjadwalkannya untuk dihapus.