Ce document explique comment utiliser Gemini Cloud Assist pour en savoir plus sur l'état de vos artefacts, obtenir des informations sur les dépôts et les métadonnées d'artefacts, et utiliser les informations d'Artifact Analysis pour répondre aux questions sur les failles des artefacts et vos logiciels (SBOM).
Avant de commencer
- Assurez-vous d'avoir configuré Gemini Cloud Assist dans votre projet Google Cloud .
- Connectez-vous à votre compte Google Cloud . Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de nos produits en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits sans frais pour exécuter, tester et déployer des charges de travail.
-
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 Artifact Registry and Container Scanning 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 Artifact Registry and Container Scanning 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
Rôles requis
Pour obtenir les autorisations nécessaires pour demander à Gemini Cloud Assist des informations sur vos artefacts, demandez à votre administrateur de vous accorder les rôles IAM suivants :
- Lecteur d'occurrences (
roles/containeranalysis.occurrences.viewer) sur le projet ou le dépôt - Utilisateur Gemini Cloud Assist (
roles/cloudaicompanion.user) dans le projet
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.
Ouvrir Gemini Cloud Assist
Vous pouvez ouvrir le chat Gemini Cloud Assist depuis n'importe où dans la consoleGoogle Cloud .
- Dans la console Google Cloud , sélectionnez un projet dans lequel vous avez stocké des images de conteneurs dans Artifact Registry.
- Pour ouvrir le panneau Cloud Assist, cliquez sur spark Ouvrir ou fermer le chat Gemini AI.
- Pour saisir un prompt, saisissez-le, puis cliquez sur Envoyer Envoyer.
Considérations relatives aux prompts
Vous trouverez ci-dessous une liste des points spécifiques à Artifact Analysis à prendre en compte lorsque vous générez des requêtes Gemini Cloud Assist. Pour obtenir des conseils généraux sur la rédaction de requêtes, consultez Rédiger de meilleurs prompts pour Gemini pour Google Cloud.
- Toutes les requêtes sont définies par défaut sur le projet sélectionné. Toutefois, vous pouvez les orienter pour filtrer par emplacement, dépôt ou image.
- Toute requête basée sur un nom d'image de conteneur traite le nom de l'image de conteneur comme un préfixe. Cela vous permet de filtrer les résultats dans un projet, un dépôt ou une image spécifique (pour différents SHA), mais pas par tag.
- Pour obtenir des résultats plus précis, incluez un champ d'application. Par exemple, pour obtenir des résultats pour une image spécifique, incluez le nom de l'image dans le champ d'application. Vous pouvez filtrer les résultats en ajoutant des détails sur le projet, le dépôt, l'image ou l'image@digest au nom de l'image de conteneur.
- Les qualificatifs de région ne sont pas nécessaires pour les requêtes d'Artifact Analysis, car l'Artifact Analysis fournit des résultats combinés de toutes les régions. Vous pouvez spécifier un qualificatif de région pour filtrer les résultats.
Lister mes principales failles connues
Vous pouvez demander à Gemini Cloud Assist de lister les principales failles connues dans votre projet actuel. Les failles sont triées par ordre décroissant en fonction de leur score CVSS (Common Vulnerability Scoring System) et regroupées par ID de faille. Seules les 10 principales failles sont affichées. Les résultats incluent les failles de toutes les images analysées au cours des 30 derniers jours.
Vous pouvez filtrer la réponse par nom d'image de conteneur.
Pour lister les principales failles connues, dans le chat Gemini Cloud Assist, saisissez le prompt suivant :
List artifact vulnerabilities for `CONTAINER_IMAGE_NAME`.
Remplacez CONTAINER_IMAGE_NAME par le nom de l'image de conteneur qui inclut votre dépôt (par exemple, us-central1-docker.pkg.dev/my-project/my-repository).
Inclure plus de détails dans le nom de votre image de conteneur permet d'obtenir une réponse plus précise. Par exemple, LOCATION-docker.pkg.dev/PROJECT-ID/REPOSITORY/IMAGE fournit des informations sur les failles d'une image spécifique.
Le prompt suivant demande à Gemini Cloud Assist de lister les principales failles connues pour le dépôt us-central1-docker.pkg.dev/my-project/my-repository :
List artifact vulnerabilities for
`us-central1-docker.pkg.dev/my-project/my-repository`.
La réponse inclut une liste de 10 failles maximum, triées par score CVSS dans l'ordre décroissant pour le dépôt spécifié.
Pour afficher toutes vos failles, utilisez la commande gcloud CLI artifacts vulnerabilities list. Vous pouvez inclure le nom de l'image non qualifié ou fournir un algorithme de hachage sécurisé (SHA) pour afficher les failles.
Lister les images par faille
Vous pouvez demander à Gemini Cloud Assist d'afficher toutes vos images qui incluent une faille spécifique. La réponse est triée par ordre décroissant de date de création et inclut les images analysées au cours des 30 derniers jours. Cette invite affiche un maximum de 10 images et n'inclut que les images qui ont été analysées par Artifact Analysis.
Vous pouvez filtrer la réponse selon les critères suivants :
- ID de la faille
- Nom de l'image de conteneur
Pour lister les images qui incluent une faille spécifique, saisissez le prompt suivant dans le chat Cloud Assist :
List docker container images that contain vulnerability
`VULNERABILITY_ID`.
Remplacez VULNERABILITY_ID par l'ID de la faille que vous souhaitez localiser (par exemple, CVE-2024-01234).
La requête suivante demande à Gemini Cloud Assist de lister les images contenant la faille CVE-2024-01234 :
List artifact vulnerabilities for `CVE-2024-01234`.
La réponse inclut une liste de 10 images maximum contenant la faille spécifiée, triées par score CVSS dans l'ordre décroissant pour le dépôt spécifié.
Lister les images par package
Vous pouvez demander à Gemini Cloud Assist de renvoyer une liste d'images incluant un package spécifié. Les images sont triées par ordre décroissant en fonction de leur date de création et incluent celles analysées au cours des 30 derniers jours. Cette requête affiche un maximum de 10 images et n'inclut que les images analysées par Artifact Analysis.
Vous pouvez filtrer la réponse par nom d'image de conteneur.
Pour lister les images qui incluent un package spécifique, saisissez le prompt suivant dans le chat Cloud Assist :
List docker container images that contain package
`PACKAGE_ID`.
Remplacez PACKAGE_ID par l'ID du package que vous souhaitez localiser.
Par exemple, le prompt suivant demande à Gemini Cloud Assist de lister les images contenant le package my-package-name :
List images that contain package `my-package-name`.
La réponse inclut une liste de 10 images maximum contenant le package spécifié.
Lister la provenance du build
Vous pouvez demander à Gemini Cloud Assist de renvoyer les 10 derniers détails de provenance de compilation pour un projet et un champ d'application spécifiés. Les résultats sont triés par date de création dans l'ordre décroissant, les éléments les plus récents étant en haut de la liste. Jusqu'à 10 builds sont affichés. Pour être listées, les compilations doivent avoir été créées au cours des 30 derniers jours. Cette requête n'est compatible qu'avec les builds ayant une provenance SLSA 1.0.
Vous pouvez filtrer la réponse par nom d'image de conteneur.
Pour lister la provenance du build, saisissez le prompt suivant dans le chat Cloud Assist :
List build provenance for CONTAINER_IMAGE_NAME.
Remplacez CONTAINER_IMAGE_NAME par l'ID de l'image dont vous souhaitez connaître la provenance.
Par exemple, le prompt suivant demande à Gemini Cloud Assist de lister la provenance du build pour us-central1-docker.pkg.dev/my-project/my-image :
List build provenance for `us-central1-docker.pkg.dev/my-project/my-image`.
Vous pouvez supprimer l'emplacement, le projet ou les détails de l'image du nom de votre image de conteneur pour obtenir un ensemble de résultats plus large. La réponse inclut les détails de la provenance des 10 derniers builds.
Pour afficher vos builds dans la console Google Cloud , accédez à la page Historique de compilation.
Lister les SBOM
Vous pouvez demander à Gemini Cloud Assist de renvoyer les dernières SBOM de votre dépôt. Les résultats sont triés par date de création dans l'ordre décroissant, les éléments les plus récents étant affichés en haut de la liste. Vous pouvez afficher jusqu'à 10 versions créées au cours des 30 derniers jours.
Vous pouvez filtrer la réponse par nom d'image de conteneur, y compris les détails image@digest.
Pour lister vos SBOM, dans le chat Cloud Assist, saisissez la requête suivante :
List SBOMs for `CONTAINER_IMAGE_NAME`.
Remplacez CONTAINER_IMAGE_NAME par le nom de l'image de conteneur que vous souhaitez rechercher, par exemple us-central1-docker.pkg.dev/my-project/my-repo.
Le prompt suivant demande à Gemini Cloud Assist de lister les SBOM du dépôt us-central1-docker.pkg.dev/my-project/my-repo :
List SBOMs for `us-central1-docker.pkg.dev/my-project/my-repo`.
La réponse inclut les détails de la SBOM pour les 10 derniers dépôts. Vous pouvez supprimer l'emplacement, le projet ou les détails de l'image du nom de votre image de conteneur pour obtenir un ensemble de résultats plus large.
Vous pouvez afficher tous les SBOM à l'aide de la commande gcloud CLI artifacts SBOM list.
Prompts supplémentaires
Les requêtes suivantes illustrent les possibilités d'utilisation de variables pour filtrer avec Gemini Cloud Assist.
Pour lister les failles par variable spécifique, saisissez la commande suivante dans le chat Cloud Assist :
List vulnerabilities for `SCOPE`.
Dans cette requête, SCOPE peut être défini sur un projet, un dépôt, une image, ou une image et un condensé.
Pour lister les images contenant un package spécifique, saisissez la commande suivante dans le chat Cloud Assist :
List images that contain the log4j package.
Pour lister les images contenant une faille spécifique, saisissez la commande suivante dans le chat Cloud Assist :
List images that contain `VULNERABILITY_ID`.
Dans cette requête, remplacez VULNERABILITY_ID par un numéro CVE.
Étapes suivantes
En savoir plus sur Gemini Cloud Assist
Découvrez comment et quand Gemini pour Google Cloud utilise vos données.