Monitorare le modifiche dello stato con Pub/Sub

Questa pagina mostra come utilizzare Pub/Sub per creare notifiche su modifiche di stato per le risorse Cloud KMS.

Prima di iniziare

Per attivare le API, concedere le autorizzazioni richieste e creare un argomento Pub/Sub, segui le istruzioni riportate in Prima di iniziare in "Monitoraggio delle modifiche agli asset".

Configurare un feed

Configura un feed che monitori il tipo di modifiche e risorse che stai che ti interessa.

Invia notifica per tutte le modifiche alle risorse

Per creare un feed, utilizza il comando gcloud asset feeds create.

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

Sostituisci quanto segue:

  • FEED_NAME: il nome da utilizzare per il feed Pub/Sub.
  • PROJECT_ID: l'ID del progetto Cloud KMS che vuoi monitorare.
  • RESOURCE_TYPE: i tipi di risorsa per cui vuoi per ricevere notifiche. Utilizza le virgole tra i tipi di risorse, ad esempio cloudkms.googleapis.com/CryptoKey,cloudkms.googleapis.com/CryptoKeyVersion. Puoi inviare notifiche per qualsiasi tipo di risorsa supportata, tra cui:

    • cloudkms.googleapis.com/CryptoKey
    • cloudkms.googleapis.com/CryptoKeyVersion
    • cloudkms.googleapis.com/EkmConnection
    • cloudkms.googleapis.com/ImportJob
    • cloudkms.googleapis.com/KeyRing
  • PUBSUB_TOPIC: il nome dell'argomento Pub/Sub che hai creato in Prima di iniziare

Viene creata una notifica quando le risorse del tipo indicato vengono create o aggiornate. La notifica indica che la risorsa è stata aggiornata, ma non includere informazioni dettagliate sull'aggiornamento. Ad esempio, una notifica di aggiornamento per un CryptoKeyVersion potrebbe indicare che la versione è stata impostata come principale o che è stata pianificata la sua eliminazione. Quando ricevi una notifica che una risorsa è stata aggiornata, devi controllarla per trovare lo stato attuale.

Invia notifica per modifiche specifiche a una risorsa

Per creare un feed con una condizione, utilizza gcloud asset feeds create con il flag --condition-expression.

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

Sostituisci quanto segue:

  • FEED_NAME: il nome da utilizzare per il feed Pub/Sub.
  • PROJECT_ID: l'ID del tuo progetto Cloud KMS.
  • RESOURCE_TYPE: il tipo di risorsa per la quale vuoi ricevere notifiche, ad esempio cloudkms.googleapis.com/CryptoKeyVersion. Puoi inviare notifiche su qualsiasi risorsa supportata , tra cui:

    • cloudkms.googleapis.com/CryptoKey
    • cloudkms.googleapis.com/CryptoKeyVersion
    • cloudkms.googleapis.com/EkmConnection
    • cloudkms.googleapis.com/ImportJob
    • cloudkms.googleapis.com/KeyRing
  • PUBSUB_TOPIC: il nome dell'argomento Pub/Sub creato in Prima di iniziare

  • CONDITION_EXPRESSION: un'espressione di condizione in Common Expression Language (CEL). Ad esempio: "folders/FOLDER_NUMBER" in temporal_asset.asset.ancestors fa sì che il feed crei notifiche solo quando la risorsa indicata è all'interno della cartella FOLDER_NUMBER.

Viene creata una notifica quando le risorse del tipo indicato che corrispondono all'espressione della condizione specificata vengono create, eliminate o aggiornate.