Halaman ini menunjukkan cara memberikan akses Binary Authorization ke kebijakan dan image penampung yang ada di project Google Cloud lain daripada project Anda saat ini. Misalnya, jika Anda men-deploy image di cluster Google Kubernetes Engine (GKE) dari repositori Artifact Registry atau Container Registry (Tidak digunakan lagi) yang dimiliki oleh project lain, Anda harus memberikan akses layanan Otorisasi Biner di project Anda ke metadata image di repositori sumber.
Terminologi
Dokumen ini menggunakan istilah berikut:
- Agen layanan: Akun layanan yang dikelola Google Cloud. Otorisasi Biner menggunakan agen layanan untuk berinteraksi dengan resource Google Cloud Anda, seperti cluster GKE.
- Project kebijakan: Project Google Cloud yang berisi kebijakan Otorisasi Biner Anda.
- Project cluster: Project Google Cloud yang berisi cluster GKE Anda.
- Project artefak: Project Google Cloud yang berisi repositori Artifact Registry atau Container Registry (Tidak digunakan lagi) Anda.
Skenario yang memerlukan akses lintas project
Anda harus memberikan izin lintas project dalam situasi seperti berikut:
- Project kebijakan Anda berbeda dengan project cluster Anda.
- Project cluster Anda berbeda dengan project artefak Anda.
Sebelum memulai
- Login ke akun Google Cloud Anda. Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa produk kami dalam skenario dunia nyata. Pelanggan baru juga mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
-
Instal Google Cloud CLI.
-
Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
-
Untuk melakukan inisialisasi gcloud CLI, jalankan perintah berikut:
gcloud init -
Buat atau pilih Google Cloud project.
Peran yang diperlukan untuk memilih atau membuat project
- Pilih project: Memilih project tidak memerlukan peran IAM tertentu—Anda dapat memilih project mana pun yang telah diberi peran.
-
Membuat project: Untuk membuat project, Anda memerlukan peran Pembuat Project
(
roles/resourcemanager.projectCreator), yang berisi izinresourcemanager.projects.create. Pelajari cara memberikan peran.
-
Buat Google Cloud project:
gcloud projects create PROJECT_ID
Ganti
PROJECT_IDdengan nama untuk Google Cloud project yang Anda buat. -
Pilih project Google Cloud yang Anda buat:
gcloud config set project PROJECT_ID
Ganti
PROJECT_IDdengan nama project Google Cloud Anda.
-
Verifikasi bahwa penagihan diaktifkan untuk project Google Cloud Anda.
Aktifkan Binary Authorization API:
Peran yang diperlukan untuk mengaktifkan API
Untuk mengaktifkan API, Anda memerlukan peran IAM Service Usage Admin (
roles/serviceusage.serviceUsageAdmin), yang berisi izinserviceusage.services.enable. Pelajari cara memberikan peran.gcloud services enable binaryauthorization.googleapis.com
-
Instal Google Cloud CLI.
-
Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
-
Untuk melakukan inisialisasi gcloud CLI, jalankan perintah berikut:
gcloud init -
Buat atau pilih Google Cloud project.
Peran yang diperlukan untuk memilih atau membuat project
- Pilih project: Memilih project tidak memerlukan peran IAM tertentu—Anda dapat memilih project mana pun yang telah diberi peran.
-
Membuat project: Untuk membuat project, Anda memerlukan peran Pembuat Project
(
roles/resourcemanager.projectCreator), yang berisi izinresourcemanager.projects.create. Pelajari cara memberikan peran.
-
Buat Google Cloud project:
gcloud projects create PROJECT_ID
Ganti
PROJECT_IDdengan nama untuk Google Cloud project yang Anda buat. -
Pilih project Google Cloud yang Anda buat:
gcloud config set project PROJECT_ID
Ganti
PROJECT_IDdengan nama project Google Cloud Anda.
-
Verifikasi bahwa penagihan diaktifkan untuk project Google Cloud Anda.
Aktifkan Binary Authorization API:
Peran yang diperlukan untuk mengaktifkan API
Untuk mengaktifkan API, Anda memerlukan peran IAM Service Usage Admin (
roles/serviceusage.serviceUsageAdmin), yang berisi izinserviceusage.services.enable. Pelajari cara memberikan peran.gcloud services enable binaryauthorization.googleapis.com
Project cluster berbeda dengan project kebijakan
Beri agen layanan Otorisasi Biner di project cluster peran
Binary Authorization Policy Evaluator
(roles/binaryauthorization.policyEvaluator)
di project kebijakan.
gcloud projects add-iam-policy-bindingPOLICY_PROJECT_ID\ --member="serviceAccount:service-$(gcloud projects describeCLUSTER_PROJECT_ID--format='value(projectNumber)')@gcp-sa-binaryauthorization.iam.gserviceaccount.com" \ --role=roles/binaryauthorization.policyEvaluator
Ganti kode berikut:
POLICY_PROJECT_ID: ID project yang berisi kebijakan Anda.CLUSTER_PROJECT_ID: project ID cluster.
Project cluster berbeda dengan project artefak
Berikan peran
Artifact Registry Reader
(roles/artifactregistry.reader) kepada agen layanan Otorisasi Biner di project cluster pada project artefak.
gcloud projects add-iam-policy-bindingARTIFACT_PROJECT_ID\ --member="serviceAccount:service-$(gcloud projects describeCLUSTER_PROJECT_ID--format='value(projectNumber)')@gcp-sa-binaryauthorization.iam.gserviceaccount.com" \ --role=roles/artifactregistry.reader
Ganti kode berikut:
ARTIFACT_PROJECT_ID: ID project yang berisi repositori Artifact Registry Anda.CLUSTER_PROJECT_ID: project ID yang menjalankan cluster GKE Anda.