Visualizzare e filtrare le SBOM

Questo documento descrive come accedere ai record della distinta base del software (SBOM) e ai metadati delle dipendenze correlate per comprendere i componenti delle immagini container archiviate in Artifact Registry.

Prima di iniziare

  1. Accedi al tuo Account Google.

    Se non ne hai già uno, registrati per un nuovo account.

  2. 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 the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the Container Analysis, Artifact Registry APIs.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  5. Installa Google Cloud CLI.

  6. Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.

  7. Per inizializzare gcloud CLI, esegui questo comando:

    gcloud init
  8. 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 the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  9. Verify that billing is enabled for your Google Cloud project.

  10. Enable the Container Analysis, Artifact Registry APIs.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  11. Installa Google Cloud CLI.

  12. Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.

  13. Per inizializzare gcloud CLI, esegui questo comando:

    gcloud init
  14. Assicurati di aver archiviato le SBOM in Cloud Storage. Consulta le istruzioni per generare le SBOM.

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per visualizzare i dati SBOM e filtrare i risultati, chiedi all'amministratore di concederti i seguenti ruoli IAM all'interno del progetto:

Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.

Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.

Visualizzare le SBOM nella Google Cloud console

Per visualizzare le SBOM e i metadati delle dipendenze correlate per le immagini container archiviate in Artifact Registry:

  1. Apri la pagina Repository di Artifact Registry.

    Apri la pagina Repository

    La pagina mostra un elenco dei tuoi repository.

  2. Nell'elenco dei repository, fai clic sul nome di un repository.

    Si apre la pagina Dettagli repository che mostra un elenco delle tue immagini.

  3. Nell'elenco delle immagini, fai clic sul nome di un'immagine.

    La pagina mostra un elenco dei digest delle immagini.

  4. Nell'elenco dei digest delle immagini, fai clic sul nome di un digest.

    La pagina mostra una riga di schede con la scheda Panoramica aperta, che mostra dettagli come formato, posizione, repository, dimensione virtuale e tag.

  5. Nella riga di schede, fai clic sulla scheda Dipendenze.

    Si apre la scheda Dipendenze che mostra le seguenti informazioni:

    • Sezione SBOM
    • Sezione Licenze
    • Un elenco filtrabile di dipendenze

SBOM

La sezione di riepilogo SBOM mostra le seguenti informazioni:

  • File: un nome file SBOM su cui è possibile fare clic, che apre la posizione in cui la tua SBOM è salvata in Cloud Storage.
  • Tipo: il tipo di standard SBOM utilizzato, ad esempio Software Package Data Exchange (SPDX) o Cyclone.
  • Versione: la versione dello standard SBOM utilizzato.
  • Generato da: l'origine dei dati SBOM, generati da Artifact Analysis o caricati manualmente.

Licenze

La sezione di riepilogo Licenze mostra un grafico a barre denominato Licenze più comuni. Questo rappresenta i tipi di licenze che appaiono più spesso nelle informazioni sulle dipendenze. Quando passi il puntatore del mouse sopra una barra del grafico, la console mostra il conteggio esatto delle istanze di quel tipo di licenza.

Dipendenze

L'elenco delle dipendenze mostra i contenuti del digest dell'immagine, tra cui:

  • Nome pacchetto
  • Versione pacchetto
  • Tipo di pacchetto
  • Tipo di licenza

Puoi filtrare l'elenco delle dipendenze in base a una di queste categorie.

Visualizzare le SBOM in Cloud Build

Se utilizzi Cloud Build, puoi visualizzare i metadati delle immagini nel Insight sulla sicurezza riquadro laterale all'interno della Google Cloud console.

Il riquadro laterale Insight sulla sicurezza fornisce una panoramica di alto livello delle informazioni sulla sicurezza delle build per gli artefatti archiviati in Artifact Registry. Per saperne di più sul riquadro laterale e su come utilizzare Cloud Build per proteggere la catena di fornitura del software, consulta Visualizzare gli insight sulla sicurezza delle build.

Visualizzare le SBOM con gcloud CLI

Utilizza il comando artifacts sbom list gcloud per cercare le SBOM archiviate in Cloud Storage. Questa ricerca si applica a tutte le SBOM in Cloud Storage, incluse quelle generate da Artifact Analysis e quelle che scegli di caricare da un'altra origine utilizzando un formato supportato.

Puoi utilizzare i filtri con il comando gcloud per restringere i risultati e concentrarti sulle SBOM più pertinenti a una preoccupazione di sicurezza o a una richiesta di conformità specifica.

Ad esempio, il seguente comando mostra come ottenere informazioni sulla SBOM per un'immagine Docker my-image archiviata in Artifact Registry:

gcloud artifacts sbom list \
    --resource="us-east1-docker.pkg.dev/my-project/my-repo/my-image:1.0"

Dove:

  • --resource specifica l'URI della risorsa immagine per cui elencare i riferimenti ai file SBOM.

L'output include quanto segue:

  • La posizione di Cloud Storage per la SBOM. Utilizzando la posizione di Cloud Storage, puoi visualizzare la SBOM in gcloud CLI eseguendo il comando gcloud storage cat.
  • Se la SBOM è ancora nel bucket Cloud Storage o è stata rimossa.
  • Un hash della SBOM che puoi utilizzare per verificare che non sia stata modificata.

Filtri

Puoi filtrare le SBOM specifiche utilizzando uno dei seguenti flag facoltativi:

Flag Finalità Valore di input
--dependency Elenca tutti i riferimenti ai file SBOM in cui una risorsa ha installato il pacchetto specificato. Consulta i tipi di pacchetti supportati. Il nome di un pacchetto installato
--resource Elenca i riferimenti ai file SBOM relativi a un'immagine specifica. L'URI della risorsa
--resource-prefix Elenca i riferimenti ai file SBOM relativi al prefisso del percorso della risorsa. Un percorso della risorsa, che verrà utilizzato come prefisso per la ricerca

Esempi di filtri

Filtra i risultati in base all'URI della risorsa:

gcloud artifacts sbom list \
--resource="us-east1-docker.pkg.dev/project/repo/my-image@sha256:88b205d7995332e10e836514fbfd59ecaf8976fc15060cd66e85cdcebe7fb356"

Filtra per prefisso della risorsa:

gcloud artifacts sbom list \
--resource-prefix="us-east1-docker.pkg.dev/project/repo"

Limitazioni

Passaggi successivi