Statusänderungen mit Pub/Sub beobachten

Auf dieser Seite wird beschrieben, wie Sie mit Pub/Sub Benachrichtigungen über Statusänderungen für Cloud KMS-Ressourcen erstellen.

Hinweise

Folgen Sie der Anleitung unter Vorbereitung unter „Assetänderungen überwachen“, um APIs zu aktivieren, die erforderlichen Berechtigungen zu gewähren und ein Pub/Sub-Thema zu erstellen.

Feed konfigurieren

Konfigurieren Sie einen Feed, der die Art der Änderungen und Ressourcen überwacht, an denen Sie interessiert sind.

Bei allen Ressourcenänderungen benachrichtigen

Verwenden Sie den Befehl gcloud asset feeds create, um einen Feed zu erstellen.

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

Ersetzen Sie Folgendes:

  • FEED_NAME: Der Name, der für Ihren Pub/Sub-Feed verwendet werden soll.
  • PROJECT_ID: Die ID des Cloud KMS-Projekts, das Sie überwachen möchten.
  • RESOURCE_TYPE: Die Ressourcentypen, für die Sie Benachrichtigungen erhalten möchten. Verwenden Sie Kommas zwischen den Ressourcentypen, z. B. cloudkms.googleapis.com/CryptoKey,cloudkms.googleapis.com/CryptoKeyVersion. Sie können Benachrichtigungen zu jedem unterstützten Ressourcentyp senden. Dazu gehören:

    • cloudkms.googleapis.com/CryptoKey
    • cloudkms.googleapis.com/CryptoKeyVersion
    • cloudkms.googleapis.com/EkmConnection
    • cloudkms.googleapis.com/ImportJob
    • cloudkms.googleapis.com/KeyRing
  • PUBSUB_TOPIC: Der Name des Pub/Sub-Themas, das Sie unter Vorbereitung erstellt haben.

Dadurch wird eine Benachrichtigung erstellt, wenn Ressourcen des angegebenen Typs erstellt oder aktualisiert werden. Die Benachrichtigung gibt an, dass die Ressource aktualisiert wurde, enthält jedoch keine detaillierten Informationen über das Update. Eine Aktualisierungsbenachrichtigung für eine CryptoKeyVersion kann beispielsweise bedeuten, dass die Version als primäre Version festgelegt wurde oder zum Löschen vorgemerkt wurde. Wenn Sie eine Benachrichtigung erhalten, dass eine Ressource aktualisiert wurde, sollten Sie prüfen, ob die Ressource ihren aktuellen Status hat.

Bei bestimmten Ressourcenänderungen benachrichtigen

Verwenden Sie zum Erstellen eines Feeds mit einer Bedingung den Befehl gcloud asset feeds create mit dem Flag --condition-expression.

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

Ersetzen Sie Folgendes:

  • FEED_NAME: Der Name, der für Ihren Pub/Sub-Feed verwendet werden soll.
  • PROJECT_ID: ID Ihres Cloud KMS-Projekts.
  • RESOURCE_TYPE: Der Ressourcentyp, für den Sie Benachrichtigungen erhalten möchten, z. B. cloudkms.googleapis.com/CryptoKeyVersion. Sie können Benachrichtigungen zu jedem unterstützten Ressourcentyp senden. Dazu gehören:

    • cloudkms.googleapis.com/CryptoKey
    • cloudkms.googleapis.com/CryptoKeyVersion
    • cloudkms.googleapis.com/EkmConnection
    • cloudkms.googleapis.com/ImportJob
    • cloudkms.googleapis.com/KeyRing
  • PUBSUB_TOPIC: Der Name des Pub/Sub-Themas, das Sie unter Vorbereitung erstellt haben.

  • CONDITION_EXPRESSION: Ein Bedingungsausdruck in der Common Expression Language (CEL). Beispielsweise erstellt "folders/FOLDER_NUMBER" in temporal_asset.asset.ancestors nur dann Benachrichtigungen, wenn sich die angegebene Ressource im Ordner FOLDER_NUMBER befindet.

Dadurch wird eine Benachrichtigung erstellt, wenn Ressourcen des angegebenen Typs, die dem angegebenen Bedingungsausdruck entsprechen, erstellt, gelöscht oder aktualisiert werden.