Panoramica della gestione dei metadati

Questa pagina introduce i concetti chiave per la gestione dei metadati e la sua importanza in una catena di distribuzione del software sicura.

Uno degli aspetti di una catena di fornitura sicura è il monitoraggio del ciclo di vita di un artefatto software. Per motivi di conformità, queste informazioni di monitoraggio potrebbero dover essere disponibili anche molto tempo dopo il ritiro dell'artefatto. Ciò può essere ottenuto generando e archiviando metadati che descrivono eventi importanti relativi a un artefatto o a una risorsa software: un'immagine container, una macchina virtuale o un pacchetto software.

Artifact Analysis consente di archiviare le informazioni sui metadati associate a una risorsa. Questi metadati possono essere recuperati in un secondo momento per controllare la supply chain del software.

Come Artifact Analysis archivia i metadati

Artifact Analysis si basa su Grafeas, un'API di metadati dei componenti open source che può fungere da fonte attendibile centralizzata per il monitoraggio e l'applicazione dei criteri. Gli strumenti di build, controllo e conformità possono utilizzare Grafeas per archiviare, eseguire query e recuperare metadati completi sui componenti software.

Poiché Grafeas è open source, non sei vincolato a un fornitore specifico. Grafeas associa i metadati utilizzando un identificatore software univoco. Separa l'archiviazione degli artefatti, in modo da poter archiviare i metadati dei componenti di molti repository diversi. Gli stessi principi si applicano ad Artifact Analysis, che puoi utilizzare come archivio di metadati universale centralizzato per i componenti software in Artifact Registry o in qualsiasi altra posizione.

Il modello Grafeas prevede due entità:

  • Un provider che crea metadati archiviati nelle note.
  • Un cliente che identifica se i metadati archiviati in una nota si applicano ai suoi artefatti. In questo caso, i metadati sono rappresentati come un'occorrenza di una nota.

Nota

Una nota descrive un elemento di metadati di alto livello. Ad esempio, puoi creare una nota su una vulnerabilità specifica per un pacchetto Linux. Puoi anche utilizzare una nota per memorizzare informazioni sul builder di unprocesso di compilazioned. I fornitori che eseguono l'analisi in genere possiedono e creano le note. I clienti che vogliono utilizzare i metadati possono quindi identificare le occorrenze delle note all'interno dei loro progetti.

Ti consigliamo di archiviare note e occorrenze in progetti separati, in modo da avere controllo dell'accesso più granulare.

Le note devono essere modificabili solo dal proprietario e di sola lettura per i clienti che hanno accesso alle occorrenze che le fanno riferimento.

Occorrenza

Un'occorrenza rappresenta il momento in cui è stata trovata una nota in un artefatto software; può essere considerata un'istanza di una nota. Ad esempio, un'occorrenza di una nota relativa a una vulnerabilità descriverebbe il pacchetto in cui è stata trovata la vulnerabilità e i passaggi specifici per la correzione. In alternativa, un'occorrenza di una nota sui dettagli della build descriverebbe le immagini container risultanti da una build.

In genere, le occorrenze vengono archiviate in progetti separati da quelli in cui vengono create le note. L'accesso in scrittura alle occorrenze deve essere concesso solo agli utenti che hanno accesso per collegare una nota all'occorrenza. Qualsiasi utente può avere accesso in lettura alle occorrenze.

Tipi di metadati supportati

La tabella seguente elenca i tipi di metadati supportati dall&#3Artifact Analysisti. I fornitori di metadati di terze parti possono archiviare e recuperare tutti i seguenti tipi di metadati per le immagini dei loro clienti.

Tipo di metadati Utilizzo nei servizi Google Cloud
Vulnerability fornisce informazioni sulle vulnerabilità dei file sottoposti a audit. Artifact Analysis genera occorrenze di vulnerabilità in base a database esterni di problemi di sicurezza divulgati pubblicamente.
Build fornisce informazioni sulla provenienza della build. Cloud Build genera questi metadati e Artifact Analysis archivia le informazioni se utilizzi Cloud Build per creare l'immagine.
Pacchetto contiene informazioni sui pacchetti installati nell'immagine.
Rilevamento contiene informazioni sulla scansione iniziale delle immagini. Artifact Analysis fornisce queste informazioni solo per le scansioni delle vulnerabilità.
Attestazione contiene le informazioni sulla certificazione dell'immagine. Sì. Autorizzazione binaria legge queste informazioni e può utilizzarle per controllare i deployment.
La valutazione delle vulnerabilità memorizza un'istruzione VEX caricata nel formato nota VulnerabilityAssessment di Grafeas.
Il riferimento SBOM fornisce metadati aggiuntivi per aiutarti a individuare e verificare le SBOM.

Passaggi successivi