Questo tutorial mostra come configurare e testare un criterio di Autorizzazione binaria che richiede attestazioni. Questo tipo di criterio protegge la catena di fornitura del software basata su container verificando che un'immagine container disponga di un'attestazione firmata prima di consentire il deployment dell'immagine.
Al momento del deployment, Autorizzazione binaria utilizza gli attestatori per verificare le firme digitali nelle attestazioni. Le attestazioni vengono create dai firmatari, di solito nell'ambito di una pipeline di integrazione continua (CI).
In questo tutorial, il cluster GKE, le attestazioni e gli attestatori si trovano tutti in un unico progetto. Una configurazione a progetto singolo è utile soprattutto per testare o sperimentare il servizio. Per un esempio più realistico, consulta la configurazione multiprogetto.
I passaggi seguenti descrivono le attività che esegui nella riga di comando. Per seguire questi passaggi utilizzando la console Google Cloud , consulta Inizia a utilizzare la console Google Cloud .
Obiettivi
In questo tutorial imparerai a:
- Crea un cluster Google Kubernetes Engine (GKE) con Autorizzazione binaria abilitata.
- Crea un attestatore che l'enforcer di Autorizzazione binaria utilizza per verificare la firma di un'attestazione
- Configura un criterio che richiede un'attestazione
- Crea una coppia di chiavi di crittografia per firmare le attestazioni e verificarle in un secondo momento
- Firma un digest dell'immagine container, creando una firma
- Creare un'attestazione utilizzando la firma
- Testa il criterio eseguendo il deployment di un'immagine container su GKE
Costi
In questo documento vengono utilizzati i seguenti componenti fatturabili di Google Cloud:
Per generare una stima dei costi in base all'utilizzo previsto,
utilizza il calcolatore prezzi.
Prima di iniziare
- Accedi al tuo account Google Cloud . Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti senza costi per l'esecuzione, il test e il deployment dei carichi di lavoro.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Installa Google Cloud CLI.
-
Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.
-
Per inizializzare gcloud CLI, esegui questo comando:
gcloud init -
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Installa Google Cloud CLI.
-
Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.
-
Per inizializzare gcloud CLI, esegui questo comando:
gcloud init - Installa
kubectlper interagire con GKE.