Mengonfigurasi kebijakan Otorisasi Biner dengan Cloud Run
Panduan memulai ini menunjukkan cara mengonfigurasi dan menguji aturan dasar dalam kebijakan Otorisasi Biner dengan Cloud Run.
Dalam panduan memulai ini, Anda akan menggunakan Otorisasi Biner untuk mengontrol deployment layanan Cloud Run.
Sebelum memulai
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Run, Artifact Registry, Binary Authorization APIs.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Run, Artifact Registry, Binary Authorization APIs.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
Membuat layanan dengan Otorisasi Biner diaktifkan
Untuk membuat layanan Cloud Run dengan Otorisasi Biner yang diaktifkan, lakukan hal berikut:
Klik Buat layanan untuk menampilkan formulir Buat layanan:
Dalam formulir yang ditampilkan, lakukan hal berikut:
- Pilih Cloud Run sebagai platform pengembangan Anda.
- Pilih region tempat Anda ingin layanan berada.
- Tentukan nama yang ingin Anda berikan ke layanan—misalnya,
test-service
. Klik Next untuk melanjutkan ke halaman Mengonfigurasi revisi pertama layanan.
Dalam formulir, lakukan hal berikut:
- Pilih Men-deploy satu revisi dari image container yang sudah ada.
Gunakan
us-docker.pkg.dev/cloudrun/container/hello
sebagai image container.Luaskan bagian Advanced settings.
Klik tab Keamanan.
Centang kotak Verifikasi deployment penampung dengan Otorisasi Biner:
Secara default, kebijakan Otorisasi Biner mengizinkan semua image untuk di-deploy.
Klik Next untuk melanjutkan ke halaman Configure how this service is triggered:
Pilih Izinkan pemanggilan yang tidak diautentikasi agar dapat membuka hasil di browser web Anda
Klik Create untuk men-deploy image ke Cloud Run dan tunggu deployment selesai.
Layanan Anda di-deploy. Revisi tunduk pada penegakan kebijakan Otorisasi Biner.
Memperbarui kebijakan Otorisasi Biner untuk melarang semua image
Kebijakan Otorisasi Biner berisi aturan default. Aturan ini mengatur deployment layanan Cloud Run yang baru saja Anda buat.
Secara default, aturan ini mengizinkan semua image container di-deploy.
Untuk melihat kebijakan default, lakukan hal berikut:
-
Klik Edit Policy.
Di Project Default Rule, perhatikan bahwa opsi Allow All Images dipilih.
Sekarang, ubah kebijakan untuk memblokir semua image agar tidak di-deploy, dengan melakukan hal berikut:
Buka halaman Binary Authorization di konsol Google Cloud.
Klik Edit Policy.
Di Aturan default, pilih Tolak Semua Gambar.
Klik Simpan Kebijakan.
Men-deploy ulang layanan
Uji kebijakan yang diperbarui dengan men-deploy revisi baru.
Untuk men-deploy image, lakukan hal berikut:
Klik nama layanan yang Anda deploy sebelumnya dalam panduan ini.
Klik Edit dan deploy revisi baru.
Klik Deploy.
Anda akan melihat pesan error yang mirip dengan berikut ini:
Service update rejected by Binary Authorization policy: RevisionREVISION
uses unauthorized container image. Container image 'us-docker.pkg.dev/cloudrun/container/hello@SHA
' is not authorized by policy. Denied by an ALWAYS_DENY admission rule
Mereset kebijakan untuk mengizinkan semua gambar
Untuk mereset kebijakan agar mengizinkan semua gambar, lakukan hal berikut:
Buka halaman Binary Authorization di konsol Google Cloud.
Klik Edit Policy.
Pilih Izinkan Semua Gambar.
Untuk menyimpan kebijakan, klik Simpan Kebijakan.
Sekarang Anda dapat men-deploy image.
Pembersihan
Agar akun Google Cloud Anda tidak dikenai biaya untuk resource yang digunakan di halaman ini, ikuti langkah-langkah berikut.
Untuk menghapus layanan yang Anda buat di Cloud Run, lakukan hal berikut:
Temukan layanan yang ingin Anda hapus dalam daftar layanan, lalu klik kotak centang layanan tersebut untuk memilihnya.
Klik Hapus. Tindakan ini akan menghapus semua revisi layanan.
Untuk menonaktifkan Otorisasi Biner, lihat Menonaktifkan Otorisasi Biner.
Langkah selanjutnya
Gunakan breakglass untuk mengabaikan penerapan Otorisasi Biner.
Gunakan pengautentikasi
built-by-cloud-build
untuk hanya men-deploy image yang dibuat oleh Cloud Build.Konfigurasikan kebijakan Otorisasi Biner menggunakan konsol Google Cloud atau alat command line.
Lihat peristiwa Otorisasi Biner untuk Cloud Run di Cloud Audit Logs.