Halaman ini memberikan petunjuk untuk mengonfigurasi kebijakan Otorisasi Biner menggunakan konsol Google Cloud. Atau, Anda dapat melakukan tugas ini menggunakan Google Cloud CLI atau REST API. Langkah ini adalah bagian dari menyiapkan Otorisasi Biner.
Kebijakan adalah sekumpulan aturan yang mengatur deployment satu atau beberapa image container.
Sebelum memulai
Aktifkan Otorisasi Biner untuk platform Anda:
Pengguna Google Kubernetes Engine (GKE): Buat cluster dengan Otorisasi Biner diaktifkan.
Pengguna Cloud Run: Aktifkan Otorisasi Biner di layanan Anda.
Jika Anda ingin menggunakan pernyataan, sebaiknya buat penanda tangan sebelum mengonfigurasi kebijakan. Anda dapat membuat pengautentikasi menggunakan konsol Google Cloud atau melalui alat command line.
Pilih project ID untuk project tempat Anda mengaktifkan Otorisasi Biner.
Menetapkan aturan default
Bagian ini berlaku untuk GKE, GKE Multi-Cloud, Distributed Cloud, Cloud Run, dan Cloud Service Mesh.
Aturan adalah bagian dari kebijakan yang menentukan batasan yang harus dipenuhi image sebelum dapat di-deploy. Aturan default menentukan batasan yang berlaku untuk semua image container yang tidak dikecualikan yang tidak memiliki aturan khusus clusternya sendiri. Setiap kebijakan memiliki aturan default.
Untuk menetapkan aturan default, lakukan hal berikut:
Di konsol Google Cloud, buka halaman Otorisasi Biner.
Klik tab Kebijakan.
Klik Edit Policy.
Tetapkan mode evaluasi untuk aturan default.
Mode evaluasi menentukan jenis batasan yang diterapkan Otorisasi Biner saat deployment. Untuk menetapkan mode evaluasi, pilih salah satu opsi berikut:
- Izinkan semua gambar: Mengizinkan semua gambar di-deploy.
- Tolak semua gambar: Tidak mengizinkan semua gambar di-deploy.
- Hanya izinkan image yang telah disetujui oleh pengautentikasi berikut: Mengizinkan image di-deploy jika image memiliki satu atau beberapa pengesahan yang dapat diverifikasi oleh semua pengautentikasi yang Anda tambahkan ke aturan ini. Untuk mempelajari cara membuat pengautentikasi, lihat Membuat pengautentikasi.
Jika Anda memilih Hanya izinkan gambar yang telah disetujui oleh penguji berikut:
Dapatkan nama atau ID resource attestor Anda.
Di konsol Google Cloud, pada halaman Attester, Anda dapat melihat attestor yang ada, atau membuat yang baru.
Klik Tambahkan Pengesah.
Pilih salah satu opsi berikut:
Tambahkan menurut project dan nama attestor
Project ini mengacu pada project ID project yang menyimpan penanda tangan Anda. Contoh nama pengautentikasi adalah
build-qa
.Menambahkan menurut ID resource attestor
ID resource memiliki format:
projects/PROJECT_ID/attestors/ATTESTOR_NAME
Di bagian Penanda tangan, masukkan nilai yang sesuai untuk opsi yang Anda pilih.
Klik Tambahkan Pengesah Lainnya jika Anda ingin menambahkan pengesah tambahan.
Klik Tambahkan Pengesah untuk menyimpan aturan.
Jika Anda ingin mengaktifkan mode uji coba, lakukan hal berikut:
Pilih Mode Uji Coba.
Klik Simpan Kebijakan.
Menetapkan aturan khusus cluster (opsional)
Bagian ini berlaku untuk GKE, Distributed Cloud, dan Cloud Service Mesh.
Kebijakan juga dapat memiliki satu atau beberapa aturan khusus cluster. Jenis aturan ini berlaku untuk image container yang akan di-deploy ke cluster Google Kubernetes Engine (GKE) tertentu saja. Aturan khusus cluster adalah bagian opsional dari kebijakan.
Menambahkan aturan khusus cluster (GKE)
Bagian ini berlaku untuk GKE dan Distributed Cloud.
Untuk menambahkan aturan khusus cluster untuk cluster GKE, lakukan hal berikut:
Di konsol Google Cloud, buka halaman Otorisasi Biner.
Klik tab Kebijakan.
Klik Edit Policy.
Luaskan bagian Setelan tambahan untuk deployment GKE dan GKE Enterprise.
Jika tidak ada jenis aturan spesifik yang ditetapkan, klik Buat Aturan Spesifik.
Untuk memilih jenis aturan, klik Specific Rule Type.
Untuk mengubah jenis aturan, klik Change.
Klik Add Specific Rule.
Di kolom Cluster resource ID, masukkan ID resource untuk cluster.
ID resource untuk cluster memiliki format
LOCATION.NAME
, misalnya,us-central1-a.test-cluster
.Tetapkan mode evaluasi untuk aturan default.
Mode evaluasi menentukan jenis batasan yang diterapkan Otorisasi Biner saat deployment. Untuk menetapkan mode evaluasi, pilih salah satu opsi berikut:
- Izinkan semua gambar: Mengizinkan semua gambar di-deploy.
- Tolak semua gambar: Tidak mengizinkan semua gambar di-deploy.
- Hanya izinkan image yang telah disetujui oleh pengautentikasi berikut: Mengizinkan image di-deploy jika image memiliki satu atau beberapa pengesahan yang dapat diverifikasi oleh semua pengautentikasi yang Anda tambahkan ke aturan ini. Untuk mempelajari cara membuat pengautentikasi, lihat Membuat pengautentikasi.
Jika Anda memilih Hanya izinkan gambar yang telah disetujui oleh penguji berikut:
Dapatkan nama atau ID resource attestor Anda.
Di konsol Google Cloud, pada halaman Attester, Anda dapat melihat attestor yang ada, atau membuat attestor baru.
Klik Tambahkan Pengesah.
Pilih salah satu opsi berikut:
Tambahkan menurut project dan nama attestor
Project ini mengacu pada project ID project yang menyimpan penanda tangan Anda. Contoh nama pengautentikasi adalah
build-qa
.Menambahkan menurut ID resource attestor
ID resource memiliki format:
projects/PROJECT_ID/attestors/ATTESTOR_NAME
Di bagian Penanda tangan, masukkan nilai yang sesuai untuk opsi yang Anda pilih.
Klik Tambahkan Pengesah Lainnya jika Anda ingin menambahkan pengesah tambahan.
Klik Tambahkan Pengesah untuk menyimpan aturan.
Klik Tambahkan untuk menambahkan aturan khusus cluster.
Anda mungkin melihat pesan yang bertuliskan, "Tampaknya cluster ini tidak ada. Aturan ini tetap akan berlaku jika cluster ini tersedia di GKE di masa mendatang." Jika demikian, klik Tambahkan lagi untuk menyimpan aturan.
Jika Anda ingin mengaktifkan mode uji coba, pilih Mode Uji Coba.
Klik Simpan Kebijakan.
Menambahkan aturan khusus cluster (GKE Multi-Cloud,Distributed Cloud)
Bagian ini berlaku untuk Distributed Cloud.
Untuk menambahkan aturan khusus cluster untuk cluster GKE, lakukan hal berikut:
Di konsol Google Cloud, buka halaman Otorisasi Biner.
Klik tab Kebijakan.
Klik Edit Policy.
Luaskan bagian Setelan tambahan untuk deployment GKE dan GKE Enterprise.
Jika tidak ada jenis aturan spesifik yang ditetapkan, klik Buat Aturan Spesifik.
Untuk memilih jenis aturan, klik Specific Rule Type.
Untuk memperbarui jenis aturan, klik Change.
Klik Add Specific Rule.
Di kolom Cluster resource ID, masukkan ID resource untuk cluster.
- Untuk cluster terpasang GKE, dan
GKE di AWS, formatnya adalah
CLUSTER_LOCATION.CLUSTER_NAME
—misalnya,us-central1-a.test-cluster
. - Untuk Google Distributed Cloud dan Google Distributed Cloud,
formatnya adalah
FLEET_MEMBERSHIP_LOCATION.FLEET_MEMBERSHIP_ID
—misalnya,global.test-membership
.
- Untuk cluster terpasang GKE, dan
GKE di AWS, formatnya adalah
Tetapkan mode evaluasi untuk aturan default.
Mode evaluasi menentukan jenis batasan yang diterapkan Otorisasi Biner saat deployment. Untuk menetapkan mode evaluasi, pilih salah satu opsi berikut:
- Izinkan semua gambar: Mengizinkan semua gambar di-deploy.
- Tolak semua gambar: Tidak mengizinkan semua gambar di-deploy.
- Hanya izinkan image yang telah disetujui oleh pengautentikasi berikut: Mengizinkan image di-deploy jika image memiliki satu atau beberapa pengesahan yang dapat diverifikasi oleh semua pengautentikasi yang Anda tambahkan ke aturan ini. Untuk mempelajari cara membuat pengautentikasi, lihat Membuat pengautentikasi.
Jika Anda memilih Hanya izinkan gambar yang telah disetujui oleh penguji berikut:
Dapatkan nama atau ID resource attestor Anda.
Di konsol Google Cloud, pada halaman Attester, Anda dapat melihat attestor yang ada, atau membuat attestor baru.
Klik Tambahkan Pengesah.
Pilih salah satu opsi berikut:
Tambahkan menurut project dan nama attestor
Project ini mengacu pada project ID project yang menyimpan penanda tangan Anda. Contoh nama pengautentikasi adalah
build-qa
.Menambahkan menurut ID resource attestor
ID resource memiliki format:
projects/PROJECT_ID/attestors/ATTESTOR_NAME
Di bagian Penanda tangan, masukkan nilai yang sesuai untuk opsi yang Anda pilih.
Klik Tambahkan Pengesah Lainnya jika Anda ingin menambahkan pengesah tambahan.
Klik Tambahkan Pengesah untuk menyimpan aturan.
Klik Tambahkan untuk menyimpan aturan.
Anda mungkin melihat pesan yang bertuliskan "Tampaknya kluster ini tidak ada. Aturan ini tetap berlaku jika cluster yang ditentukan tersedia di GKE di masa mendatang." Dalam hal ini, klik Tambahkan lagi untuk menyimpan aturan.
Jika Anda ingin mengaktifkan mode uji coba, pilih Mode Uji Coba.
Klik Simpan Kebijakan.
Menambahkan aturan spesifik
Anda dapat membuat aturan yang dicakupkan ke identitas layanan mesh, akun layanan Kubernetes, atau namespace Kubernetes. Anda dapat menambahkan atau mengubah aturan tertentu sebagai berikut:
Di konsol Google Cloud, buka halaman Otorisasi Biner.
Klik tab Kebijakan.
Klik Edit Policy.
Luaskan bagian Setelan tambahan untuk deployment GKE dan Anthos.
Jika tidak ada jenis aturan spesifik yang ditetapkan, klik Buat Aturan Spesifik.
Klik Jenis Aturan Spesifik untuk memilih jenis aturan.
Klik Ubah untuk memperbarui jenis aturan.
Jika jenis aturan tertentu ada, Anda dapat mengubah jenis aturan dengan mengklik Edit Type.
Untuk menambahkan aturan tertentu, klik Tambahkan Aturan Khusus. Bergantung pada jenis aturan yang Anda pilih, Anda harus memasukkan ID, sebagai berikut:
- ASM Service Identity: Masukkan identitas layanan ASM Anda, yang memiliki format berikut: PROJECT_ID.svc.id.goog/ns/NAMESPACE/sa/SERVICE_ACCOUNT
- Akun Layanan Kubernetes: Masukkan akun layanan Kubernetes Anda, yang memiliki format berikut: NAMESPACE:SERVICE_ACCOUNT.
- Namespace Kubernetes: Masukkan namespace Kubernetes Anda, yang memiliki format berikut: NAMESPACE
Ganti kode berikut, sesuai kebutuhan, bergantung pada jenis aturan:
- PROJECT_ID: project ID tempat Anda menentukan resource Kubernetes.
- NAMESPACE: namespace Kubernetes.
- SERVICE_ACCOUNT: akun layanan.
Tetapkan mode evaluasi untuk aturan default.
Mode evaluasi menentukan jenis batasan yang diterapkan Otorisasi Biner saat deployment. Untuk menetapkan mode evaluasi, pilih salah satu opsi berikut:
- Izinkan semua gambar: Mengizinkan semua gambar di-deploy.
- Tolak semua gambar: Tidak mengizinkan semua gambar di-deploy.
- Hanya izinkan image yang telah disetujui oleh pengautentikasi berikut: Mengizinkan image di-deploy jika image memiliki satu atau beberapa pengesahan yang dapat diverifikasi oleh semua pengautentikasi yang Anda tambahkan ke aturan ini. Untuk mempelajari cara membuat pengautentikasi, lihat Membuat pengautentikasi.
Jika Anda memilih Hanya izinkan gambar yang telah disetujui oleh penguji berikut:
Dapatkan nama atau ID resource attestor Anda.
Di konsol Google Cloud, pada halaman Attester, Anda dapat melihat attestor yang ada, atau membuat attestor baru.
Klik Tambahkan Pengesah.
Pilih salah satu opsi berikut:
Tambahkan menurut project dan nama attestor
Project ini mengacu pada project ID project yang menyimpan penanda tangan Anda. Contoh nama pengautentikasi adalah
build-qa
.Menambahkan menurut ID resource attestor
ID resource memiliki format:
projects/PROJECT_ID/attestors/ATTESTOR_NAME
Di bagian Penanda tangan, masukkan nilai yang sesuai untuk opsi yang Anda pilih.
Klik Tambahkan Pengesah Lainnya jika Anda ingin menambahkan pengesah tambahan.
Klik Tambahkan Pengesah untuk menyimpan aturan.
Klik Mode uji coba untuk mengaktifkan mode uji coba.
Klik Tambahkan untuk menyimpan aturan tertentu.
Klik Simpan Kebijakan.
Mengelola gambar yang dikecualikan
Bagian ini berlaku untuk GKE, Distributed Cloud, Cloud Run, dan Cloud Service Mesh.
Gambar yang dikecualikan adalah gambar, yang ditentukan oleh jalur, yang dikecualikan dari aturan kebijakan. Otorisasi Biner selalu mengizinkan deployment image yang dikecualikan.
Jalur ini dapat menentukan lokasi di Container Registry atau registry image container lainnya.
Cloud Run
Bagian ini berlaku untuk Cloud Run.
Anda tidak dapat langsung menentukan nama gambar yang berisi tag. Misalnya, Anda tidak dapat menentukan
IMAGE_PATH
:latest.
Jika ingin menentukan nama gambar yang berisi tag, Anda harus menentukan nama gambar menggunakan karakter pengganti sebagai berikut:
*
untuk semua versi gambar tunggal; misalnya,us-docker.pkg.dev/myproject/container/hello@*
**
untuk semua image dalam project; misalnya,us-docker.pkg.dev/myproject/**
Anda dapat menggunakan nama jalur untuk menentukan ringkasan dalam format
IMAGE_PATH
@DIGEST
.
Mengaktifkan kebijakan sistem
Bagian ini berlaku untuk GKE dan Distributed Cloud.
Percayai semua image sistem yang disediakan Google adalah setelan kebijakan yang mengaktifkan kebijakan sistem Otorisasi Biner. Jika setelan ini diaktifkan pada waktu deployment, Otorisasi Biner akan mengecualikan daftar image sistem yang dikelola Google yang diperlukan oleh GKE dari evaluasi kebijakan lebih lanjut. Kebijakan sistem dievaluasi sebelum setelan kebijakan Anda yang lain.
Untuk mengaktifkan kebijakan sistem, lakukan langkah berikut:
Buka halaman Binary Authorization di Konsol Google Cloud.
Klik Edit Policy.
Luaskan bagian Setelan tambahan untuk deployment GKE dan Anthos.
Pilih Percayai semua image sistem yang disediakan Google di bagian Pengecualian image sistem Google.
Untuk melihat gambar yang dikecualikan oleh kebijakan sistem, klik Lihat Detail.
Untuk menentukan gambar tambahan yang dikecualikan secara manual, luaskan bagian Aturan pengecualian kustom di bagian Gambar yang dikecualikan dari kebijakan ini.
Kemudian, klik Add Image Pattern dan masukkan jalur registry ke gambar tambahan yang ingin Anda kecualikan.
Klik Simpan Kebijakan.
Langkah selanjutnya
- Gunakan pengautentikasi
built-by-cloud-build
untuk hanya men-deploy image yang dibuat oleh Cloud Build (Pratinjau). - Gunakan pengesahan.
- Men-deploy image GKE.
- Melihat peristiwa Cloud Audit Logs.
- Gunakan validasi berkelanjutan.
- Gunakan validasi berkelanjutan lama (tidak digunakan lagi) untuk memeriksa kepatuhan kebijakan.