Esta página mostra como usar o Pub/Sub para criar notificações sobre alterações de estado para recursos do Cloud KMS.
Antes de começar
Para ativar as APIs, conceder as autorizações necessárias e criar um tópico do Pub/Sub, siga as instruções em Antes de começar em "Monitorizar alterações aos recursos".
Configure um feed
Configure um feed que monitorize o tipo de alterações e recursos nos quais tem interesse.
Notificar 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 o seguinte:
FEED_NAME
: o nome a usar para o seu feed do Pub/Sub.PROJECT_ID
: o ID do projeto do Cloud KMS que quer monitorizar.RESOURCE_TYPE
: os tipos de recursos para os quais quer receber notificações. Use vírgulas entre os tipos de recursos, por exemplo,cloudkms.googleapis.com/CryptoKey,cloudkms.googleapis.com/CryptoKeyVersion
. Pode enviar notificações sobre qualquer tipo de recurso suportado, 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 que criou em Antes de começar
Isto 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 notificação de atualização para um CryptoKeyVersion
pode significar que a versão foi tornada principal ou que a versão foi agendada para destruição. Quando recebe uma notificação a indicar que um recurso foi atualizado, deve verificar o recurso para encontrar o respetivo estado atual.
Notifique sobre alterações 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 o seguinte:
FEED_NAME
: o nome a usar para o seu feed do Pub/Sub.PROJECT_ID
: o ID do seu projeto do Cloud KMS.RESOURCE_TYPE
: o tipo de recurso para o qual quer receber notificações, por exemplo,cloudkms.googleapis.com/CryptoKeyVersion
. Pode enviar notificações sobre qualquer tipo de recurso suportado, 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 que criou em Antes de começarCONDITION_EXPRESSION
: uma expressão de condição no Idioma de expressão comum (IEC). Por exemplo,"folders/FOLDER_NUMBER" in temporal_asset.asset.ancestors
faz com que o feed só crie notificações quando o recurso indicado estiver localizado na pastaFOLDER_NUMBER
.
Isto cria uma notificação quando os recursos do tipo indicado que correspondem à expressão de condição especificada são criados, eliminados ou atualizados.