Questo documento descrive come accedere ai record della distinta base del software (SBOM) e ai metadati delle dipendenze correlati per aiutarti a comprendere i componenti delle immagini container archiviate in Artifact Registry.
Prima di iniziare
-
Accedi al tuo Account Google.
Se non ne hai già uno, registrati per creare un nuovo account.
-
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.
Enable the Container Analysis, Artifact Registry APIs, if any are not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
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.
Enable the Container Analysis, Artifact Registry APIs, if any are not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init - Avere le SBOM archiviate in Cloud Storage. Consulta le istruzioni sulla generazione di 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 nel progetto:
- Container Analysis Occurrences Viewer (
roles/containeranalysis.occurrences.viewer) - Consumatore Service Usage (
roles/serviceusage.serviceUsageConsumer) - Artifact Registry Reader (
roles/artifactregistry.reader) -
Per verificare le SBOM:
Storage Object Viewer (
roles/storage.objectViewer) - un bucket Cloud Storage specifico
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.
Visualizza le SBOM nella console Google Cloud
Per visualizzare le SBOM e i metadati delle dipendenze correlate per le immagini container archiviate in Artifact Registry:
Apri la pagina Repository di Artifact Registry.
La pagina mostra un elenco dei tuoi repository.
Nell'elenco dei repository, fai clic sul nome di un repository.
Si apre la pagina Dettagli repository, che mostra un elenco delle tue immagini.
Nell'elenco delle immagini, fai clic sul nome di un'immagine.
La pagina mostra un elenco dei digest delle immagini.
Nell'elenco dei digest delle immagini, fai clic sul nome di un digest.
La pagina mostra una riga di schede in cui è aperta la scheda Panoramica, che mostra dettagli come formato, posizione, repository, dimensioni virtuali e tag.
Nella riga di schede, fai clic sulla scheda Dipendenze.
Si apre la scheda delle 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 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 utilizzata.
- 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. Rappresenta i tipi di licenze che compaiono più spesso nelle informazioni sulle dipendenze. Quando tieni il puntatore 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 qualsiasi di queste categorie.
Visualizzare le SBOM in Cloud Build
Se utilizzi Cloud Build, puoi visualizzare i metadati delle immagini nel riquadro laterale Approfondimenti sulla sicurezza all'interno della console Google Cloud .
Il riquadro laterale Insight sulla sicurezza fornisce una panoramica generale delle informazioni sulla sicurezza della build per gli artefatti archiviati in Artifact Registry. Per saperne di più sul riquadro laterale e su come utilizzare Cloud Build per proteggere la tua catena di fornitura del software, consulta Visualizzare gli insight sulla sicurezza delle build.
Visualizza le SBOM con gcloud CLI
Utilizza il comando
gcloud artifacts sbom list
per cercare le SBOM archiviate in Cloud Storage. Questa ricerca
si applica a tutti gli SBOM in Cloud Storage, inclusi quelli
generati da Artifact Analysis e quelli 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 un problema di sicurezza o a una richiesta di conformità specifici.
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:
--resourcespecifica l'URI della risorsa immagine per cui elencare i riferimenti ai file SBOM.
L'output include quanto segue:
- La posizione di Cloud Storage per l'SBOM. Utilizzando la posizione di Cloud Storage, puoi visualizzare la SBOM in gcloud CLI eseguendo il comando gcloud storage cat.
- Indica se la SBOM è ancora presente nel bucket Cloud Storage o è stata rimossa.
- Un hash della SBOM che puoi utilizzare per verificare che non sia stata modificata.
Filtri
Puoi filtrare SBOM specifiche utilizzando uno dei seguenti flag facoltativi:
| Flag | Finalità | Valore di input |
|---|---|---|
--dependency |
Elenca tutti i riferimenti ai file SBOM in cui è 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 correlati al prefisso del percorso della risorsa. | Un percorso della risorsa, che verrà utilizzato come prefisso per la ricerca |
Esempi di filtri
Filtra i risultati per URI 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
- Le informazioni sulla licenza vengono fornite solo per i pacchetti del sistema operativo e i pacchetti di lingua supportati.
Passaggi successivi
- Genera SBOM.
- Scopri come utilizzare le istruzioni VEX per fornire ulteriori informazioni sulla sicurezza. Consulta la sezione Generare e archiviare SBOM per i formati supportati da Artifact Analysis.