Validar un mensaje con un esquema

En este documento se explica cómo validar esquemas de temas de Pub/Sub.

Puedes validar que los mensajes se ajusten a un esquema determinado antes o después de crear un recurso de esquema. Con este paso, te aseguras de que los mensajes que quieres enviar a través de un tema asociado a un esquema coincidan antes de aplicar el esquema.

Antes de empezar

Roles y permisos necesarios

Para obtener los permisos que necesitas para validar mensajes de esquema y gestionarlos, pide a tu administrador que te conceda el rol de gestión de identidades y accesos Editor de Pub/Sub (roles/pubsub.editor) en tu proyecto. Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar el acceso a proyectos, carpetas y organizaciones.

Este rol predefinido contiene los permisos necesarios para validar mensajes de esquema y gestionarlos. Para ver los permisos exactos que se necesitan, despliega la sección Permisos necesarios:

Permisos obligatorios

Para validar mensajes de esquema y gestionarlos, se necesitan los siguientes permisos:

  • Crea un esquema: pubsub.schemas.create
  • Adjuntar un esquema a un tema: pubsub.schemas.attach
  • Confirmar una revisión del esquema: pubsub.schemas.commit
  • Eliminar un esquema o una revisión de un esquema: pubsub.schemas.delete
  • Obtener un esquema o revisiones de un esquema: pubsub.schemas.get
  • Ver esquemas: pubsub.schemas.list
  • Lista de revisiones del esquema: pubsub.schemas.listRevisions
  • Restaurar una versión anterior de un esquema: pubsub.schemas.rollback
  • Validar un mensaje: pubsub.schemas.validate
  • Obtener la política de gestión de identidades y accesos de un esquema: pubsub.schemas.getIamPolicy
  • Configura la política de gestión de identidades y accesos de un esquema: pubsub.schemas.setIamPolicy

También puedes obtener estos permisos con roles personalizados u otros roles predefinidos.

Puedes conceder roles y permisos a entidades principales, como usuarios, grupos, dominios o cuentas de servicio. Puedes crear un esquema en un proyecto y adjuntarlo a un tema ubicado en otro proyecto. Asegúrate de que tienes los permisos necesarios para cada proyecto.

Validar un mensaje con un esquema

Consola

  1. En la Google Cloud consola, ve a la página Esquemas de Pub/Sub.

    Ir a Esquemas

    Se muestra la lista de esquemas.

  2. Haga clic en el ID de esquema de un esquema.

    Se abrirá la página Detalles del esquema del esquema.

  3. En la sección Revisiones, haga clic en la revisión para la que quiera validar un mensaje.

  4. En la sección Detalles, haz clic en Mensaje de prueba.

  5. En la ventana Mensaje de prueba, selecciona un tipo de Codificación de mensaje.

  6. En el cuerpo del Mensaje, escribe un mensaje de prueba.

  7. Haz clic en Test (Probar).

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud 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.

  2. Para validar un mensaje con un esquema, usa el 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))
    

    Haz los cambios siguientes:

    • MESSAGE: mensaje que se va a validar con el esquema

    • MESSAGE_ENCODING: codificación del mensaje. Especifica uno de los siguientes valores: binary o json.

    • SCHEMA_NAME: nombre o ruta completa de un esquema.

    • TYPE: tipo de esquema insertado. Especifique uno de los siguientes valores: avro o protocol-buffer.

    • DEFINITION: definición de esquema insertada.

    • DEFINITION_FILE: archivo que contiene la definición del esquema.

Siguientes pasos