Surveiller les changements d'état à l'aide de Pub/Sub

Cette page vous explique comment utiliser Pub/Sub pour créer des notifications sur les changements d'état des ressources Cloud KMS.

Avant de commencer

Pour activer des API, accorder les autorisations requises et créer un sujet Pub/Sub, suivez les instructions de la section Avant de commencer de la section "Surveiller les modifications apportées aux éléments".

Configurer un flux

Configurez un flux qui surveille le type de modifications et les ressources qui vous intéressent.

Envoyer une notification en cas de modification des ressources

Pour créer un flux, utilisez la commande gcloud asset feeds create.

gcloud asset feeds create FEED_NAME \
  --project=PROJECT_ID  \
  --asset-types="RESOURCE_TYPE" \
  --pubsub-topic="PUBSUB_TOPIC"

Remplacez les éléments suivants :

  • FEED_NAME: nom à utiliser pour votre flux Pub/Sub.
  • PROJECT_ID: ID du projet Cloud KMS que vous souhaitez surveiller.
  • RESOURCE_TYPE: types de ressources pour lesquelles vous souhaitez recevoir des notifications. Utilisez des virgules entre les types de ressources (par exemple, cloudkms.googleapis.com/CryptoKey,cloudkms.googleapis.com/CryptoKeyVersion). Vous pouvez envoyer des notifications pour tous les types de ressources compatibles, y compris les suivants:

    • cloudkms.googleapis.com/CryptoKey
    • cloudkms.googleapis.com/CryptoKeyVersion
    • cloudkms.googleapis.com/EkmConnection
    • cloudkms.googleapis.com/ImportJob
    • cloudkms.googleapis.com/KeyRing
  • PUBSUB_TOPIC: nom du sujet Pub/Sub que vous avez créé à la section Avant de commencer.

Une notification est créée lorsque des ressources du type indiqué sont créées ou mises à jour. La notification indique que la ressource a été mise à jour, mais n'inclut pas d'informations détaillées sur cette mise à jour. Par exemple, une notification de mise à jour pour un CryptoKeyVersion peut signifier que la version a été définie comme version principale ou que sa destruction a été programmée. Lorsque vous recevez une notification indiquant qu'une ressource a été mise à jour, vous devez vérifier la ressource pour connaître son état actuel.

Envoyer une notification en cas de modifications de ressources spécifiques

Pour créer un flux avec une condition, exécutez la commande gcloud asset feeds create avec l'option --condition-expression.

gcloud asset feeds create FEED_NAME \
  --project=PROJECT_ID  \
  --asset-types="RESOURCE_TYPE" \
  --pubsub-topic="PUBSUB_TOPIC" \
  --condition-expression="CONDITION_EXPRESSION"

Remplacez les éléments suivants :

  • FEED_NAME: nom à utiliser pour votre flux Pub/Sub.
  • PROJECT_ID : ID de votre projet Cloud KMS.
  • RESOURCE_TYPE: type de ressource pour laquelle vous souhaitez recevoir des notifications (par exemple, cloudkms.googleapis.com/CryptoKeyVersion). Vous pouvez envoyer des notifications pour tous les types de ressources compatibles, y compris les suivants:

    • cloudkms.googleapis.com/CryptoKey
    • cloudkms.googleapis.com/CryptoKeyVersion
    • cloudkms.googleapis.com/EkmConnection
    • cloudkms.googleapis.com/ImportJob
    • cloudkms.googleapis.com/KeyRing
  • PUBSUB_TOPIC: nom du sujet Pub/Sub que vous avez créé à la section Avant de commencer.

  • CONDITION_EXPRESSION: expression de condition dans le langage CEL (Common Expression Language). Par exemple, avec "folders/FOLDER_NUMBER" in temporal_asset.asset.ancestors, le flux ne crée des notifications que lorsque la ressource indiquée se trouve dans le dossier FOLDER_NUMBER.

Une notification est créée lorsque des ressources du type indiqué qui correspondent à l'expression de condition spécifiée sont créées, supprimées ou mises à jour.