Configurare un criterio di Autorizzazione binaria con Cloud Run
Questa guida rapida mostra come configurare e testare una regola di base in un criterio di Autorizzazione binaria con Cloud Run.
In questa guida rapida, utilizzi l'Autorizzazione binaria per controllare il deployment di un servizio Cloud Run.
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 gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.
-
Nella pagina del selettore dei progetti in Google Cloud Console, seleziona o crea un progetto Google Cloud.
-
Assicurati che la fatturazione sia attivata per il tuo progetto Cloud. Scopri come verificare se la fatturazione è abilitata su un progetto.
-
Abilita le API Cloud Run, Artifact Registry, Binary Authorization.
- Installa Google Cloud CLI.
-
Per inizializzare l'interfaccia a riga di comando gcloud, esegui il comando seguente:
gcloud init
-
Nella pagina del selettore dei progetti in Google Cloud Console, seleziona o crea un progetto Google Cloud.
-
Assicurati che la fatturazione sia attivata per il tuo progetto Cloud. Scopri come verificare se la fatturazione è abilitata su un progetto.
-
Abilita le API Cloud Run, Artifact Registry, Binary Authorization.
- Installa Google Cloud CLI.
-
Per inizializzare l'interfaccia a riga di comando gcloud, esegui il comando seguente:
gcloud init
Crea un servizio con Autorizzazione binaria abilitata
Per creare un servizio Cloud Run con Autorizzazione binaria abilitata, segui questi passaggi:
Fai clic su Crea servizio per visualizzare il modulo Crea servizio:
Nel modulo visualizzato, procedi nel seguente modo:
- Seleziona Cloud Run come piattaforma di sviluppo.
- Seleziona la regione in cui vuoi collocare il servizio.
- Specifica il nome che vuoi assegnare al servizio, ad esempio
test-service
. Fai clic su Avanti per passare alla pagina Configura la prima revisione del servizio.
Nel modulo, procedi nel seguente modo:
- Seleziona Esegui il deployment di una revisione da un'immagine container esistente.
Utilizza
us-docker.pkg.dev/cloudrun/container/hello
come immagine container.Espandi la sezione Impostazioni avanzate.
Fai clic sulla scheda Sicurezza.
Seleziona la casella di controllo Verifica il deployment del container con Autorizzazione binaria:
Per impostazione predefinita, il criterio di Autorizzazione binaria consente il deployment di tutte le immagini.
Fai clic su Avanti per passare alla pagina Configura il modo in cui viene attivato questo servizio:
Seleziona Consenti chiamate non autenticate per poter aprire il risultato nel tuo browser web.
Fai clic su Crea per eseguire il deployment dell'immagine in Cloud Run e attendere il completamento del deployment.
Il deployment del servizio è in corso. Le revisioni sono soggette all'applicazione dei criteri di Autorizzazione binaria.
Aggiorna il criterio di Autorizzazione binaria per non consentire tutte le immagini
Il criterio di Autorizzazione binaria contiene una regola predefinita. Questa regola regola il deployment del servizio Cloud Run appena creato.
Per impostazione predefinita, la regola consente il deployment di tutte le immagini container.
Per visualizzare il criterio predefinito:
-
Fai clic su Modifica criterio.
Nella regola predefinita del progetto, tieni presente che l'opzione Consenti tutte le immagini è selezionata.
Ora modifica il criterio per bloccare il deployment di tutte le immagini:
Vai alla pagina Autorizzazione binaria in Google Cloud Console.
Fai clic su Modifica criterio.
In Regola predefinita, seleziona Non consentire tutte le immagini.
Fai clic su Save Policy (Salva criterio).
Esegui di nuovo il deployment del servizio
Testa il criterio aggiornato eseguendo il deployment di una nuova revisione.
Per eseguire il deployment dell'immagine:
Fai clic sul nome del servizio di cui hai eseguito il deployment in precedenza in questa guida.
Fai clic su Modifica ed esegui il deployment di una nuova revisione.
Fai clic su Esegui il deployment.
Viene visualizzato un messaggio di errore simile al seguente:
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
Reimposta il criterio per consentire tutte le immagini
Per reimpostare il criterio per consentire tutte le immagini, procedi come segue:
Vai alla pagina Autorizzazione binaria in Google Cloud Console.
Fai clic su Modifica criterio.
Seleziona Consenti tutte le immagini.
Per salvare il criterio, fai clic su Salva criterio.
Ora puoi eseguire il deployment delle immagini.
Esegui la pulizia
Per evitare che al tuo account Google Cloud vengano addebitati costi relativi alle risorse utilizzate in questa pagina, segui questi passaggi:
Per eliminare il servizio creato in Cloud Run, procedi come segue:
Individua il servizio che vuoi eliminare nell'elenco dei servizi e fai clic sulla casella di controllo corrispondente per selezionarlo.
Fai clic su Elimina. Vengono eliminate tutte le revisioni del servizio.
Per disattivare Autorizzazione binaria, vedi Disattivare Autorizzazione binaria.
Passaggi successivi
Utilizza breakglass per aggirare l'applicazione di Autorizzazione binaria.
Utilizza l'attestatore
built-by-cloud-build
per eseguire il deployment solo delle immagini create da Cloud Build (anteprima).Configura il criterio di Autorizzazione binaria utilizzando Google Cloud Console o lo strumento a riga di comando.
Visualizza Autorizzazione binaria per gli eventi Cloud Run in Cloud Audit Logs.