En esta página, se muestra cómo usar Pub/Sub para crear notificaciones sobre cambios de estado de los recursos de Cloud KMS.
Antes de comenzar
Para habilitar las APIs, otorgar los permisos necesarios y crear un tema de Pub/Sub, sigue las instrucciones que se indican en Antes de comenzar en “Supervisa cambios de recursos”.
Configura un feed
Configura un feed que supervise el tipo de cambios y los recursos que te interesan.
Notificar sobre todos los cambios de recursos
Para crear un feed, usa el comando gcloud asset feeds create
.
gcloud asset feeds create FEED_NAME \ --project=PROJECT_ID \ --asset-types="RESOURCE_TYPE" \ --pubsub-topic="PUBSUB_TOPIC"
Reemplaza lo siguiente:
FEED_NAME
: Es el nombre que se usará para tu feed de Pub/Sub.PROJECT_ID
: El ID del proyecto de Cloud KMS que deseas supervisar.RESOURCE_TYPE
: Son los tipos de recursos para los que deseas recibir notificaciones. Usa comas entre los tipos de recursos, por ejemplo,cloudkms.googleapis.com/CryptoKey,cloudkms.googleapis.com/CryptoKeyVersion
. Puedes notificar sobre cualquier tipo de recurso compatible, incluidos los siguientes:cloudkms.googleapis.com/CryptoKey
cloudkms.googleapis.com/CryptoKeyVersion
cloudkms.googleapis.com/EkmConnection
cloudkms.googleapis.com/ImportJob
cloudkms.googleapis.com/KeyRing
PUBSUB_TOPIC
: Es el nombre del tema de Pub/Sub que creaste en Antes de comenzar.
Esto crea una notificación cuando se crean o actualizan recursos del tipo indicado. La notificación indica que se actualizó el recurso, pero no incluye información detallada sobre ella. Por ejemplo, una notificación de actualización de una CryptoKeyVersion
podría significar que la versión se estableció como principal o que se programó su destrucción. Cuando recibes una notificación de que se actualizó un recurso, debes verificar el recurso para encontrar su estado actual.
Notificar cambios específicos de recursos
Para crear un feed con una condición, usa el comando gcloud asset feeds create
con la marca --condition-expression
.
gcloud asset feeds create FEED_NAME \ --project=PROJECT_ID \ --asset-types="RESOURCE_TYPE" \ --pubsub-topic="PUBSUB_TOPIC" \ --condition-expression="CONDITION_EXPRESSION"
Reemplaza lo siguiente:
FEED_NAME
: Es el nombre que se usará para tu feed de Pub/Sub.PROJECT_ID
: Es el ID del proyecto de Cloud KMS.RESOURCE_TYPE
: Es el tipo de recurso para el que deseas recibir notificaciones, por ejemplo,cloudkms.googleapis.com/CryptoKeyVersion
. Puedes notificar sobre cualquier tipo de recurso compatible, incluidos los siguientes:cloudkms.googleapis.com/CryptoKey
cloudkms.googleapis.com/CryptoKeyVersion
cloudkms.googleapis.com/EkmConnection
cloudkms.googleapis.com/ImportJob
cloudkms.googleapis.com/KeyRing
PUBSUB_TOPIC
: Es el nombre del tema de Pub/Sub que creaste en Antes de comenzar.CONDITION_EXPRESSION
: Es una expresión de condición en Common Expression Language (CEL). Por ejemplo,"folders/FOLDER_NUMBER" in temporal_asset.asset.ancestors
hace que el feed solo cree notificaciones cuando el recurso indicado se encuentra en la carpetaFOLDER_NUMBER
.
Esto crea una notificación cuando se crean, borran o actualizan recursos del tipo indicado que coinciden con la expresión de condición especificada.