Ce document explique comment configurer les notifications pour les mises à jour des notes et des occurrences.
Artifact Analysis fournit des notifications via Pub/Sub pour les failles détectées lors d'une analyse automatisée et pour d'autres métadonnées. Lorsqu'une note ou une occurrence est créée ou mise à jour, un message est publié dans le sujet correspondant pour chaque version de l'API. Utilisez le sujet correspondant à la version de l'API que vous utilisez.
Avant de commencer
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Enable the Container Analysis API.
- Install the Google Cloud CLI.
-
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.
-
Enable the Container Analysis API.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
- Découvrez comment configurer le contrôle des accès pour les métadonnées de votre projet. Ignorez cette étape si vous n'utilisez que les métadonnées des occurrences de failles créées par l'analyse des conteneurs Artifact Analysis.
Créer des sujets Pub/Sub
Une fois l'API Artifact Analysis activée, elle crée automatiquement des sujets Pub/Sub avec les ID de sujet suivants:
container-analysis-notes-v1
container-analysis-occurrences-v1
Si les sujets ont été supprimés par accident ou sont manquants, vous pouvez les ajouter vous-même. Par exemple, les sujets peuvent être manquants si votre organisation Google Cloud est soumise à une contrainte de règle d'administration qui nécessite le chiffrement avec des clés de chiffrement gérées par le client (CMEK). Lorsque l'API Pub/Sub figure dans la liste de refus de cette contrainte, les services ne peuvent pas créer automatiquement de sujets avec des clés appartenant à Google et gérées par Google.
Pour créer les sujets avec des clés détenues et gérées par Google:
Console
Accédez à la page des sujets Pub/Sub dans la console Google Cloud.
Cliquez sur Créer un sujet.
Saisissez un ID de sujet:
container-analysis-notes-v1
afin que le nom corresponde à l'URI:
projects/PROJECT_ID/topics/container-analysis-notes-v1
où PROJECT_ID correspond à votre ID de projet Google Cloud.
Cliquez sur Créer.
Saisissez un ID de sujet:
container-analysis-occurrences-v1
afin que le nom corresponde à l'URI:
projects/PROJECT_ID/topics/container-analysis-occurrences-v1
gcloud
Exécutez les commandes suivantes dans la fenêtre de votre interface système ou de votre terminal :
gcloud pubsub topics create projects/PROJECT_ID/topics/container-analysis-notes-v1
gcloud pubsub topics create projects/PROJECT_ID/topics/container-analysis-occurrences-v1
Pour en savoir plus sur la commande gcloud pubsub topics
, consultez la documentation sur topics
.
Pour créer des sujets avec le chiffrement CMEK, consultez les instructions Pub/Sub pour chiffrer des sujets.
Chaque fois qu'une note ou une occurrence est créée ou mise à jour, un message est publié dans le sujet correspondant. Vous devez toutefois également créer un abonnement Pub/Sub pour écouter les événements et recevoir des messages du service Pub/Sub.
Créer un abonnement Pub/Sub
Pour écouter des événements, créez un abonnement Pub/Sub associé au sujet:
Console
Accédez à la page "Abonnements Pub/Sub" dans la console Google Cloud.
Cliquez sur Créer un abonnement.
Saisissez un nom pour l'abonnement. Exemple : notes.
Saisissez l'URI du sujet pour les notes :
projects/PROJECT_ID/topics/container-analysis-notes-v1
où PROJECT_ID correspond à votre ID de projet Google Cloud.
Cliquez sur Créer.
Créez un autre abonnement pour les occurrences avec l'URI :
projects/PROJECT_ID/topics/container-analysis-occurrences-v1
gcloud
Pour recevoir des événements Pub/Sub, vous devez d'abord créer un abonnement associé au sujet container-analysis-occurrences-v1
:
gcloud pubsub subscriptions create \
--topic container-analysis-occurrences-v1 occurrences
Vous pouvez ensuite récupérer des messages concernant vos occurrences à l'aide de votre nouvel abonnement :
gcloud pubsub subscriptions pull \
--auto-ack occurrences
Java
Pour savoir comment installer et utiliser la bibliothèque cliente pour l'Artifact Analysis, consultez la page Bibliothèques clientes d'analyse d'artefacts. Pour en savoir plus, consultez la documentation de référence de l'API Artifact Analysis Java.
Pour vous authentifier auprès d'Artifact Analysis, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Go
Pour savoir comment installer et utiliser la bibliothèque cliente pour l'Artifact Analysis, consultez la page Bibliothèques clientes d'analyse d'artefacts. Pour en savoir plus, consultez la documentation de référence de l'API Artifact Analysis Go.
Pour vous authentifier auprès d'Artifact Analysis, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Node.js
Pour savoir comment installer et utiliser la bibliothèque cliente pour l'Artifact Analysis, consultez la page Bibliothèques clientes d'analyse d'artefacts. Pour en savoir plus, consultez la documentation de référence de l'API Artifact Analysis Node.js.
Pour vous authentifier auprès d'Artifact Analysis, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Ruby
Pour savoir comment installer et utiliser la bibliothèque cliente pour l'Artifact Analysis, consultez la page Bibliothèques clientes d'analyse d'artefacts. Pour en savoir plus, consultez la documentation de référence de l'API Artifact Analysis Ruby.
Pour vous authentifier auprès d'Artifact Analysis, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Python
Pour savoir comment installer et utiliser la bibliothèque cliente pour l'Artifact Analysis, consultez la page Bibliothèques clientes d'analyse d'artefacts. Pour en savoir plus, consultez la documentation de référence de l'API Artifact Analysis Python.
Pour vous authentifier auprès d'Artifact Analysis, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Les applications d'abonnés ne reçoivent que les messages publiés dans le sujet après la création de l'abonnement.
Les charges utiles Pub/Sub sont au format JSON et leur schéma se présente comme suit :
Notes :
{ "name": "projects/PROJECT_ID/notes/NOTE_ID", "kind": "NOTE_KIND", "notificationTime": "NOTIFICATION_TIME", }
Occurrences :
{ "name": "projects/PROJECT_ID/occurrences/OCCURRENCE_ID", "kind": "NOTE_KIND", "notificationTime": "NOTIFICATION_TIME", }
où :
- NOTE_KIND est l'une des valeurs de
NoteKind
. - NOTIFICATION_TIME est un horodatage au format RFC 3339 UTC "Zulu", précis à la nanoseconde près.
Afficher les détails
Pour en savoir plus sur une note ou une occurrence, vous pouvez accéder aux métadonnées stockées dans l'Artifact Analysis. Par exemple, vous pouvez demander tous les détails d'un événement spécifique. Pour en savoir plus, consultez la section Examiner les failles.
Étape suivante
Pour savoir comment utiliser Artifact Analysis pour stocker et gérer vos métadonnées personnalisées, consultez la section Créer des notes et des occurrences personnalisées.
Vous pouvez utiliser des attestations avec l'analyse des failles pour empêcher les images présentant des problèmes de sécurité connus de s'exécuter dans votre environnement de déploiement. Pour obtenir des instructions à ce sujet, consultez la section Créer des attestations avec Kritis Signer.