Questa pagina mostra come concedere a Autorizzazione binaria l'accesso a policy e immagini contenitore presenti in progetti Google Cloud diversi dal tuo progetto attuale. Ad esempio, se esegui il deployment di immagini nel tuo cluster Google Kubernetes Engine (GKE) da un repository Artifact Registry o Container Registry (Ritirato) di proprietà di un altro progetto, dovrai concedere al servizio di autorizzazione binaria nel tuo progetto l'accesso ai metadati delle immagini nel repository di origine.
Terminologia
Questo documento utilizza i seguenti termini:
- Agente di servizio : un account di servizio gestito da Google Cloud. L'Autorizzazione binaria utilizza un agente di servizio per interagire con le risorse Google Cloud, come i cluster GKE.
- Progetto criterio: il progetto Google Cloud che contiene il criterio di autorizzazione binaria.
- Progetto cluster : il progetto Google Cloud che contiene il tuo cluster GKE.
- Progetto di artefatti: il progetto Google Cloud che contiene il repository Artifact Registry o Container Registry (dismesso).
Scenari che richiedono l'accesso tra progetti
Devi concedere autorizzazioni tra progetti in situazioni come le seguenti:
- Il progetto di norme è diverso dal progetto del cluster.
- Il progetto del cluster è diverso dal progetto dell'elemento.
Prima di iniziare
- 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.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create or select a Google Cloud project.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Binary Authorization API:
gcloud services enable binaryauthorization.googleapis.com
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create or select a Google Cloud project.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Binary Authorization API:
gcloud services enable binaryauthorization.googleapis.com
Progetto del cluster diverso dal progetto del criterio
Concedi all'agente di servizio di Autorizzazione binaria nel progetto del cluster il ruolo Valutatore del criterio di autorizzazione binaria (roles/binaryauthorization.policyEvaluator
) nel progetto del criterio.
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
Sostituisci quanto segue:
POLICY_PROJECT_ID
: l'ID del progetto che contiene il criterio.CLUSTER_PROJECT_ID
: l'ID progetto del cluster.
Progetto del cluster diverso dal progetto dell'elemento
Concedi all'agente di servizio di Autorizzazione binaria nel progetto del cluster il ruolo
Lettore di Artifact Registry
(roles/artifactregistry.reader
) nel progetto dell'artifact.
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
Sostituisci quanto segue:
ARTIFACT_PROJECT_ID
: l'ID del progetto che contiene il tuo repository Artifact Registry.CLUSTER_PROJECT_ID
: l'ID progetto che esegue i tuoi cluster GKE.