Ce document explique comment accéder à vos enregistrements de nomenclature logicielle (SBOM) et aux métadonnées de dépendances associées pour vous aider à comprendre les composants de vos images de conteneurs stockées dans Artifact Registry.
Avant de commencer
-
Connectez-vous à votre compte Google.
Si vous n'en possédez pas déjà un, vous devez en créer un.
-
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.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
Installez la Google Cloud CLI.
-
Si vous utilisez un fournisseur d'identité (IdP) externe, vous devez d'abord vous connecter à la gcloud CLI avec votre identité fédérée.
-
Pour initialiser la gcloud CLI, exécutez la commande suivante :
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.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
Installez la Google Cloud CLI.
-
Si vous utilisez un fournisseur d'identité (IdP) externe, vous devez d'abord vous connecter à la gcloud CLI avec votre identité fédérée.
-
Pour initialiser la gcloud CLI, exécutez la commande suivante :
gcloud init - Avoir des SBOM stockées dans Cloud Storage Consultez les instructions pour générer des SBOM.
Rôles requis
Pour obtenir les autorisations nécessaires pour afficher les données SBOM et filtrer les résultats, demandez à votre administrateur de vous accorder les rôles IAM suivants sur le projet :
-
Lecteur d'occurrences Container Analysis (
roles/containeranalysis.occurrences.viewer) -
Consommateur Service Usage (
roles/serviceusage.serviceUsageConsumer) -
Lecteur Artifact Registry (
roles/artifactregistry.reader) -
Pour valider les SBOM :
Lecteur des objets Storage (
roles/storage.objectViewer) : un bucket Cloud Storage spécifique
Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.
Vous pouvez également obtenir les autorisations requises avec des rôles personnalisés ou d'autres rôles prédéfinis.
Afficher les SBOM dans la console Google Cloud
Pour afficher les SBOM et les métadonnées de dépendances associées pour les images de conteneurs stockées dans Artifact Registry :
Ouvrez la page Dépôts d'Artifact Registry.
La page qui s'affiche répertorie vos dépôts.
Dans la liste des dépôts, cliquez sur le nom d'un dépôt.
La page Détails du dépôt s'ouvre et affiche la liste de vos images.
Dans la liste des images, cliquez sur le nom d'une image.
La page affiche la liste de vos résumés d'images.
Dans la liste des condensés d'images, cliquez sur le nom d'un condensé.
La page affiche une ligne d'onglets. L'onglet Présentation est ouvert et affiche des informations telles que le format, l'emplacement, le dépôt, la taille virtuelle et les tags.
Dans la ligne d'onglets, cliquez sur l'onglet Dépendances.
L'onglet "Dépendances" s'ouvre et affiche les informations suivantes :
- Section SBOM
- Section "Licences"
- Liste filtrable des dépendances
SBOM
La section récapitulative SBOM affiche les informations suivantes :
- Fichier : nom de fichier SBOM cliquable, qui ouvre l'emplacement où votre SBOM est enregistrée dans Cloud Storage.
- Type : type de norme SBOM utilisée, comme SPDX (Software Package Data Exchange) ou Cyclone.
- Version : version de la norme SBOM utilisée.
- Généré par : origine des données SBOM (générées par Artifact Analysis ou importées manuellement).
Licences
La section récapitulative Licences affiche un graphique à barres intitulé Licences les plus courantes. Cela représente les types de licences qui apparaissent le plus souvent dans les informations sur vos dépendances. Lorsque vous pointez sur une barre du graphique, la console affiche le nombre exact d'instances de ce type de licence.
Dépendances
La liste des dépendances affiche le contenu du résumé de votre image, y compris :
- Nom du package
- Version du package
- Type de package
- Type de licence
Vous pouvez filtrer la liste des dépendances selon l'une de ces catégories.
Afficher les SBOM dans Cloud Build
Si vous utilisez Cloud Build, vous pouvez afficher les métadonnées des images dans le panneau latéral Informations sur la sécurité de la console Google Cloud .
Le panneau latéral Insights sur la sécurité fournit un aperçu général des informations de sécurité des compilations pour les artefacts stockés dans Artifact Registry. Pour en savoir plus sur le panneau latéral et sur la façon dont vous pouvez utiliser Cloud Build pour protéger votre chaîne d'approvisionnement logicielle, consultez Afficher les insights de sécurité des compilations.
Afficher les SBOM avec la gcloud CLI
Utilisez la commande gcloud artifacts sbom list pour rechercher les SBOM stockées dans Cloud Storage. Cette recherche s'applique à toutes vos SBOM dans Cloud Storage, y compris celles générées par Artifact Analysis et celles que vous choisissez d'importer depuis une autre source à l'aide d'un format compatible.
Vous pouvez utiliser des filtres avec la commande gcloud pour affiner les résultats et vous concentrer sur les SBOM les plus pertinents pour un problème de sécurité ou une demande de conformité spécifiques.
Par exemple, la commande suivante montre comment obtenir des informations sur la SBOM d'une image Docker my-image stockée dans Artifact Registry :
gcloud artifacts sbom list \
--resource="us-east1-docker.pkg.dev/my-project/my-repo/my-image:1.0"
Où :
--resourcespécifie l'URI de la ressource d'image pour laquelle lister les références de fichiers SBOM.
Le résultat inclut les éléments suivants :
- Emplacement Cloud Storage du SBOM. À l'aide de l'emplacement Cloud Storage, vous pouvez afficher la SBOM dans la gcloud CLI en exécutant la commande gcloud storage cat.
- Indique si la SBOM se trouve toujours dans le bucket Cloud Storage ou si elle a été supprimée.
- Hachage de la SBOM que vous pouvez utiliser pour vérifier qu'elle n'a pas été modifiée.
Filtres
Vous pouvez filtrer des SBOM spécifiques à l'aide de l'une des options facultatives suivantes :
| Option | Objectif | Valeur d'entrée |
|---|---|---|
--dependency |
Lister toutes les références de fichiers SBOM où une ressource a le package spécifié installé. Consultez les types de packages compatibles. | Nom d'un package installé |
--resource |
Lister les références de fichiers SBOM associés à une image spécifique. | URI de la ressource |
--resource-prefix |
Lister les références de fichiers SBOM liées au préfixe du chemin d'accès à la ressource. | Chemin d'accès à une ressource, qui sera utilisé comme préfixe pour la recherche |
Exemples de filtrage
Filtrer les résultats par URI de ressource :
gcloud artifacts sbom list \
--resource="us-east1-docker.pkg.dev/project/repo/my-image@sha256:88b205d7995332e10e836514fbfd59ecaf8976fc15060cd66e85cdcebe7fb356"
Filtrer par préfixe de ressource :
gcloud artifacts sbom list \
--resource-prefix="us-east1-docker.pkg.dev/project/repo"
Limites
- Les informations sur les licences ne sont fournies que pour les packages d'OS et les packages de langages compatibles.
Étapes suivantes
- Générez des SBOM.
- Découvrez comment utiliser les déclarations VEX pour fournir des informations de sécurité supplémentaires. Pour connaître les formats compatibles avec Artifact Analysis, consultez Générer et stocker des SBOM.