Buat dan kelola secret dengan Cloud Code

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:

Pandu saya


Sebelum memulai

  1. Di konsol Google Cloud, buka halaman Pemilih project.

    Buka pemilih project

  2. Pilih atau buat project Google Cloud.

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

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:

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

    Nama project aktif di status bar

  2. Di menu Pilihan Cepat yang muncul, pilih New Application, lalu klik Cloud Run Application.

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

  4. Pilih folder untuk sampel Anda, lalu klik Buat Aplikasi Baru.

Setelah Cloud Shell Editor memuat layanan Anda di ruang kerja baru, lihat filenya dalam tampilan explorer.

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:

  1. Klik Secret Manager dan tunggu beberapa saat untuk dimuat.
  2. Jika diminta untuk mengotorisasi Cloud Shell agar dapat melakukan panggilan API Google Cloud, 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 kode berikut di kolom Name:

    my-secret
    
  7. Di kolom Nilai Rahasia, masukkan:

    Hello secret!
    
  8. Klik Create Secret dan pesan yang menyatakan bahwa rahasia Anda berhasil dibuat akan ditampilkan.

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:

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

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

  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 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')
    
    
  5. Untuk memanggil fungsi access_secret_version, ganti variabel pesan dengan kode 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 Secret Manager > [SECRET_NAME] > Versions, arahkan kursor ke versi Anda, lalu klik Copy resource ID.

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

Menjalankan di emulator Cloud Run

Untuk menguji secret baru Anda, 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 Anda ke emulator, pilih Run on Cloud Run Emulator.
  3. Di tab Run/Debug di 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 Anda dengan mengklik link localhost yang muncul di panel Output. Nilai rahasia Anda ditampilkan di bawah grafik keberhasilan.

Lihat dan buat versi rahasia baru

Tampilan Secret Manager Cloud Code memperlihatkan rahasia project Anda, beserta tindakan untuk mengelolanya.

Melihat nilai versi secret

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

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.

  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 muncul di variabel pesan di app.py dengan ID versi 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. Rahasia yang dinonaktifkan tidak dapat diakses, tetapi Anda selalu dapat memulihkan aksesnya kapan saja.

Untuk menonaktifkan versi secret:

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

Menghancurkan versi rahasia

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

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

Pembersihan

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

  1. Klik Cloud Code, lalu luaskan bagian Kubernetes.
  2. Arahkan kursor ke nama cluster Anda, 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 apa pun):

  1. Buka halaman BigQuery di konsol Google Cloud.

    Buka halaman Projects

  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.