Este documento mostra como validar esquemas para tópicos do Pub/Sub.
Pode validar se as mensagens cumprem um determinado esquema, antes ou depois de criar um recurso de esquema. Este passo garante que as mensagens que pretende enviar através de um tópico associado a um esquema correspondem realmente antes de aplicar o esquema.
Antes de começar
- Compreenda como funcionam os esquemas do Pub/Sub.
- Crie um esquema.
Funções e autorizações necessárias
Para receber as autorizações de que
precisa para validar mensagens de esquema e geri-las,
peça ao seu administrador que lhe conceda a função IAM de
Editor do Pub/Sub (roles/pubsub.editor
)
no seu projeto.
Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.
Esta função predefinida contém as autorizações necessárias para validar mensagens de esquemas e geri-las. Para ver as autorizações exatas que são necessárias, expanda a secção Autorizações necessárias:
Autorizações necessárias
São necessárias as seguintes autorizações para validar mensagens de esquemas e geri-las:
-
Crie um esquema:
pubsub.schemas.create
-
Anexe o esquema ao tópico:
pubsub.schemas.attach
-
Confirme uma revisão do esquema:
pubsub.schemas.commit
-
Elimine um esquema ou uma revisão de esquema:
pubsub.schemas.delete
-
Obtenha um esquema ou revisões de esquemas:
pubsub.schemas.get
-
Esquemas de listas:
pubsub.schemas.list
-
Revisões do esquema da lista:
pubsub.schemas.listRevisions
-
Reverter um esquema:
pubsub.schemas.rollback
-
Valide uma mensagem:
pubsub.schemas.validate
-
Obtenha a Política IAM para um esquema:
pubsub.schemas.getIamPolicy
-
Configure a Política IAM para um esquema:
pubsub.schemas.setIamPolicy
Também pode conseguir estas autorizações com funções personalizadas ou outras funções predefinidas.
Pode conceder funções e autorizações a responsáveis, como utilizadores, grupos, domínios ou contas de serviço. Pode criar um esquema num projeto e anexá-lo a um tópico localizado num projeto diferente. Certifique-se de que tem as autorizações necessárias para cada projeto.
Valide uma mensagem para um esquema
Consola
Na Cloud de Confiance consola, aceda à página Esquemas do Pub/Sub.
É apresentada a lista de esquemas.
Clique no ID do esquema de um esquema existente.
É apresentada a página Detalhes do esquema do esquema.
Na secção Revisões, clique na revisão para a qual quer validar uma mensagem.
Na secção Detalhes, clique em Mensagem de teste.
Na janela Mensagem de teste, selecione um tipo de Codificação de mensagens.
No corpo da Mensagem, introduza uma mensagem de teste.
Clique em Testar.
gcloud
-
In the Cloud de Confiance console, activate Cloud Shell.
At the bottom of the Cloud de Confiance console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
- Para validar uma mensagem de acordo com um esquema, use o comando
gcloud pubsub schemas validate-message.
gcloud pubsub schemas validate-message --message=MESSAGE \ --message-encoding=MESSAGE_ENCODING \ (--schema-name=SCHEMA_NAME | \ --type=TYPE \ (--definition=DEFINITION | \ --definition-file=DEFINITION_FILE))
Substitua o seguinte:
MESSAGE: mensagem a validar em relação ao esquema
MESSAGE_ENCODING: codificação da mensagem. Especifique um dos seguintes valores:
binary
oujson
.SCHEMA_NAME: nome ou caminho completo de um esquema existente.
TYPE: tipo de esquema inline. Especifique um dos seguintes valores:
avro
ouprotocol-buffer
.DEFINITION: definição do esquema inline.
DEFINITION_FILE: ficheiro que contém a definição do esquema.