Panoramica di Autorizzazione binaria

Questo documento fornisce una panoramica di Autorizzazione binaria.

Che cos'è Autorizzazione binaria?

L'autorizzazione binaria è un prodotto Google Cloud che puoi utilizzare per implementare misure di sicurezza della catena di approvvigionamento del software durante lo sviluppo e il deployment di applicazioni basate su container.

Che cosa fa Autorizzazione binaria?

Puoi utilizzare l'autorizzazione binaria per:

Quali piattaforme supporta Autorizzazione binaria?

Autorizzazione binaria supporta le seguenti piattaforme:

L'autorizzazione binaria fa parte di un'architettura di deployment che include i seguenti prodotti correlati:

  • Artifact Registry, Container Registry e altri registry che archiviano le immagini di cui vuoi eseguire il deployment.
  • Artifact Analysis fornisce informazioni sulle vulnerabilità che puoi utilizzare con Autorizzazione binaria per controllare il deployment. Separatamente, Artifact Analysis archivia i metadati attendibili utilizzati nella procedura di autorizzazione.
  • Monitoraggio della sicurezza, un dashboard che puoi usare per valutare la strategia di sicurezza da prodotti Google Cloud interdipendenti, tra cui Autorizzazione binaria.
  • Cloud Build, che produce attestazioni e provenienza Autorizzazione binaria può utilizzare per l'applicazione e il monitoraggio.
  • Cloud Deploy è una distribuzione continua gestita che automatizza la distribuzione delle applicazioni a una serie di ambienti in una sequenza definita.

L'autorizzazione binaria si basa sulla specifica Kritis, che fa parte del progetto open source Grafeas.

Sfondo

La sicurezza della catena di fornitura del software mira a garantire che il software venga acquisito, creato testato, rilasciato e distribuito in base alle best practice interne e standard.

Le architetture basate su container consentono ai team di sviluppare basati su microservizi, ad esempio quelli basati su architetture di microservizi incoraggia l'uso di pratiche di sviluppo a breve termine, tra cui integrazione continua (CI) e deployment continuo (CD).

In un ambiente di sviluppo basato su container, le immagini possono essere implementate su una serie di cluster, ad esempio test, gestione temporanea e rilascio, che fanno parte della catena di fornitura del software.

L'obiettivo di Autorizzazione binaria è ridurre il rischio di implementare software difettoso, vulnerabile o non autorizzato in questo tipo di ambiente. Utilizzando questo servizio, puoi impedire il deployment delle immagini se non soddisfano un criterio definire.

Sebbene Autorizzazione binaria non prescriva procedure interne o best practice, ti aiuta a applicare le tue pratiche limitando il deployment delle immagini che non hanno superato i controlli richiesti.

Ciclo di vita

Un ciclo di vita del deployment per le immagini può essere costituito dalle seguenti fasi, in cui il completamento di una fase è un prerequisito per il passaggio a quello successivo uno, ad esempio:

  1. Build e test delle unità
  2. Deployment in un ambiente di sviluppo in cui gli utenti non sono interessati
  3. Deployment in un ambiente di QA, dove solo gli utenti interni sono interessati
  4. Deployment in un ambiente canary, dove solo una frazione degli utenti esterni sono interessati
  5. Deployment in produzione

Ogni fase può avere il proprio ambiente di deployment, ad esempio una un cluster GKE o un progetto Google Cloud e il suo criteri che devono essere soddisfatti prima che un'immagine possa passare alla fase successiva. L'autorizzazione binaria consente di definire le regole in base alle quali un'immagine passa da una fase all'altra e fornisce i mezzi per applicarle.

Attestazioni

I casi d'uso più comuni di Autorizzazione binaria riguardano attestati. Un l'attestazione certifica che un'immagine specifica ha completato una fase precedente, come descritti in precedenza. Configuri il criterio di Autorizzazione binaria Verificare l'attestazione prima di consentire il deployment dell'immagine. Al momento del deployment, invece di ripetere le attività completate nelle fasi precedenti, l'autorizzazione di codice deve solo verificare l'attestazione.

I casi d'uso che coinvolgono le attestazioni includono i seguenti:

  • Verifica della build, in cui Autorizzazione binaria utilizza le attestazioni per verificare che un'immagine sia stata creata da un sistema di build o da una pipeline di integrazione continua (CI) specifici.

    Per scoprire come configurare una pipeline CI, basata su Cloud Build, può Creare un'attestazione, consulta Integrazione di Cloud Build.

  • Analisi delle vulnerabilità, in cui l'immagine creata da CI è stata anche analizzati per rilevare le vulnerabilità da parte di Artifact Analysis. In questo caso, l'attestazione viene creata solo se le vulnerabilità identificatesoddisfano un criterio di firma delle vulnerabilità.

    Scopri come configurare una pipeline CI di analisi delle vulnerabilità con Voucher o Kritis Signer.

  • Controllo manuale, in cui una persona, ad esempio un rappresentante QA, esegue manualmente crea l'attestazione.

    Per scoprire come creare manualmente un'attestazione, consulta Creare attestazioni.

Consulta la Guida introduttiva all'utilizzo della console Google Cloud per tutorial sull'attestazione end-to-end.

Funzionalità

L'autorizzazione binaria fornisce:

  • Un modello di criteri che ti consente di descrivere le limitazioni in base alle quali è possibile eseguire il deployment delle immagini
  • Un modello di attestazione che ti consente di definire autorità di fiducia che possano attestare o verificare che i processi richiesti nel tuo dell'ambiente di lavoro sono stati completati prima del deployment.
  • Un applicazione forzata in fase di deployment che impedisce le immagini che violano il criterio il deployment

Modello di criteri

Autorizzazione binaria implementa un modello di criteri, dove un criterio è un insieme di regole che regola il deployment delle immagini container. Le regole in un criterio forniscono criteri specifici che un'immagine deve soddisfare prima di poter essere eseguita. Il deployment.

Per ulteriori informazioni sul modello dei criteri di Autorizzazione binaria e su altri vedi Concetti principali.

Configurazione

Per configurare Autorizzazione binaria, devi prima abilitare il servizio per Progetti Google Cloud che costituiscono il deployment e l'autorizzazione una pipeline o un blocco note personalizzato.

Poi devi definire il criterio che specifica i vincoli in base al quale eseguire il deployment delle immagini. Se il criterio richiede attestazioni prima del deployment, devi anche configurare gli attestatori che possono verificare le attestazioni prima di consentire il deployment delle immagini associate.

Per configurare l'autorizzazione binaria, consulta le seguenti guide:

Autorizzazione

Prima di poter eseguire il deployment di un'immagine, tutti i firmatari richiesti devono creare un'attestazione che verifica che l'immagine sia pronta per il passaggio alla successiva durante la fase di deployment. L'attestazione è un record che contiene il registro del percorso e del digest dell'immagine, che è stata firmata digitalmente chiave di crittografia privata del firmatario.

Per saperne di più sull'autorizzazione, consulta Utilizzare le attestazioni.

Applicazione

Quando esegui il deployment di un'immagine, Autorizzazione binaria controlla il criterio e applica qualsiasi regola trovata che regola il relativo deployment.

Se l'immagine soddisfa le limitazioni definite nel criterio, Autorizzazione binaria consente di eseguirne il deployment. In caso contrario, il servizio blocca il deployment e scrive un a Cloud Audit Logs che descrive perché l'immagine non è più conformità.

Per visualizzare gli eventi di applicazione di Autorizzazione binaria in Cloud Audit Logs: consulta le seguenti guide:

Per ulteriori informazioni sul deployment, consulta le seguenti guide:

Convalida continua

La convalida continua (CV) con criteri della piattaforma basati su controlli è una funzionalità di Autorizzazione binaria che controlla periodicamente i metadati delle immagini container associate ai pod in esecuzione per verificare la conformità continua ai criteri.

Scopri di più su CV.

Autorizzazione binaria sicura con i Controlli di servizio VPC

Controlli di servizio VPC migliorano la tua capacità di mitigare il rischio di copia o trasferimento non autorizzato di dati dalle tue risorse e dai tuoi servizi gestiti da Google.

Per saperne di più sulla protezione delle risorse relative ad Autorizzazione binaria, consulta Sicurezza con i Controlli di servizio VPC.

Software Delivery Shield

Autorizzazione binaria fa parte di Software Delivery Shield soluzione. Software Delivery Shield è una piattaforma end-to-end completamente gestita che aiuta a migliorare la sicurezza della catena di fornitura del software. postura dei flussi di lavoro e degli strumenti per sviluppatori, dipendenze software, sistemi CI/CD utilizzati per creare ed eseguire il deployment del software e ambienti di runtime come Google Kubernetes Engine e Cloud Run. Per scoprire come utilizzare Autorizzazione binaria con altri componenti di Software Delivery Shield per migliorare la postura di sicurezza della catena di fornitura del software, consulta la panoramica di Software Delivery Shield.

Passaggi successivi