Esta página mostra como usar o Pub/Sub para criar notificações sobre mudanças de estado dos recursos do Cloud KMS.
Antes de começar
Para ativar APIs, conceder as permissões necessárias e criar um tópico do Pub/Sub, siga as instruções em Antes de começar em "Monitorar mudanças de recursos".
Configurar um feed
Configure um feed que monitore o tipo de mudanças e recursos em que você tem interesse.
Notificar sobre todas as alterações de recursos
Para criar um feed, use o comando gcloud asset feeds create
.
gcloud asset feeds create FEED_NAME \ --project=PROJECT_ID \ --asset-types="RESOURCE_TYPE" \ --pubsub-topic="PUBSUB_TOPIC"
Substitua:
FEED_NAME
: o nome a ser usado para seu feed do Pub/Sub.PROJECT_ID
: o ID do projeto do Cloud KMS que você quer monitorar.RESOURCE_TYPE
: os tipos de recurso para os quais você quer receber notificações. Use vírgulas entre os tipos de recursos, por exemplo,cloudkms.googleapis.com/CryptoKey,cloudkms.googleapis.com/CryptoKeyVersion
. Você pode notificar em qualquer recurso com suporte tipo, incluindo o seguinte:cloudkms.googleapis.com/CryptoKey
cloudkms.googleapis.com/CryptoKeyVersion
cloudkms.googleapis.com/EkmConnection
cloudkms.googleapis.com/ImportJob
cloudkms.googleapis.com/KeyRing
PUBSUB_TOPIC
: o nome do tópico do Pub/Sub criado em Antes de começar
Isso cria uma notificação quando os recursos do tipo indicado são criados ou
atualizados. A notificação indica que o recurso foi atualizado, mas não
inclui informações detalhadas sobre a atualização. Por exemplo, uma atualização
notificação de um CryptoKeyVersion
pode significar que a versão foi definida como principal ou
que a versão foi programada para destruição. Quando você recebe uma notificação
que um recurso foi atualizado, verifique-o para encontrar
o estado atual.
Notificar sobre mudanças específicas de recursos
Para criar um feed com uma condição, use o comando gcloud asset feeds create
com a flag --condition-expression
.
gcloud asset feeds create FEED_NAME \ --project=PROJECT_ID \ --asset-types="RESOURCE_TYPE" \ --pubsub-topic="PUBSUB_TOPIC" \ --condition-expression="CONDITION_EXPRESSION"
Substitua:
FEED_NAME
: o nome a ser usado para seu feed do Pub/Sub.PROJECT_ID
: o ID do seu projeto do Cloud KMSRESOURCE_TYPE
: o tipo de recurso para o qual você quer receber notificações, por exemplo,cloudkms.googleapis.com/CryptoKeyVersion
. É possível notificar qualquer tipo de recurso com suporte, incluindo:cloudkms.googleapis.com/CryptoKey
cloudkms.googleapis.com/CryptoKeyVersion
cloudkms.googleapis.com/EkmConnection
cloudkms.googleapis.com/ImportJob
cloudkms.googleapis.com/KeyRing
PUBSUB_TOPIC
: o nome do tópico do Pub/Sub criado em Antes de começarCONDITION_EXPRESSION
: uma expressão de condição em Common Expression Language (CEL). Por exemplo:"folders/FOLDER_NUMBER" in temporal_asset.asset.ancestors
faz com que o feed só crie notificações quando o recurso indicado for localizado na pastaFOLDER_NUMBER
.
Isso cria uma notificação quando recursos do tipo indicado que correspondem ao expressão de condição especificada forem criadas, excluídas ou atualizadas.