Valida un mensaje para un esquema

En este documento, se muestra cómo validar esquemas para los temas de Pub/Sub.

Puede validar que los mensajes se adhieran a un determinado esquema, antes o después de crear un recurso de esquema. Este paso garantiza que los mensajes que intentas enviar a través de un tema asociado con un un esquema real antes de aplicarlo.

Antes de comenzar

Funciones y permisos requeridos

A fin de obtener los permisos que necesitas para validar los mensajes del esquema y administrarlos, solicita a tu administrador que te otorgue el Rol de IAM de Editor de Pub/Sub (roles/pubsub.editor) en tu proyecto. Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso.

Este rol predefinido contiene los permisos necesarios para validar los mensajes de esquema y administrarlos. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:

Permisos necesarios

Se requieren los siguientes permisos para validar los mensajes de esquema y administrarlos:

  • Crea un esquema: pubsub.schemas.create
  • Adjunta un esquema al tema: pubsub.schemas.attach
  • Confirma una revisión del esquema: pubsub.schemas.commit
  • Borra un esquema o una revisión de esquema: pubsub.schemas.delete
  • Obtén un esquema o revisiones de esquema: pubsub.schemas.get
  • Enumera los esquemas: pubsub.schemas.list
  • Enumera las revisiones de esquema: pubsub.schemas.listRevisions
  • Revierte un esquema: pubsub.schemas.rollback
  • Valida un mensaje: pubsub.schemas.validate
  • Obtén la política de IAM para un esquema: pubsub.schemas.getIamPolicy
  • Configura la política de IAM para un esquema: pubsub.schemas.setIamPolicy

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

Puedes otorgar roles y permisos a principales, como usuarios, grupos, dominios o cuentas de servicio. Puedes crear un esquema en un proyecto adjuntarlo a un tema ubicado en un proyecto diferente. Asegúrate de tener los permisos necesarios para cada proyecto.

Valida un mensaje para un esquema

Console

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

    Ir a Esquemas

    Se muestra la lista de esquemas.

  2. Haz clic en el ID de esquema de un esquema existente.

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

  3. En la sección Revisiones, haz clic en la revisión que deseas modificar. 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 mensajes.

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

  7. Haz clic en Probar.

gcloud

  1. En la consola de Google Cloud, activa Cloud Shell.

    Activar Cloud Shell

    En la parte inferior de la consola de Google Cloud, se inicia una sesión de Cloud Shell en la que se muestra una ventana de línea de comandos. Cloud Shell es un entorno de shell con Google Cloud CLI ya instalada y con valores ya establecidos para el proyecto actual. La sesión puede tardar unos segundos en inicializarse.

  2. Para validar un mensaje según un esquema, usa el gcloud pubsub schemas validate-message kubectl.

    gcloud pubsub schemas validate-message --message=MESSAGE \
        --message-encoding=MESSAGE_ENCODING \
        (--schema-name=SCHEMA_NAME | \
        --type=TYPE \
        (--definition=DEFINITION | \
        --definition-file=DEFINITION_FILE))
    

    Reemplaza lo siguiente:

    • MESSAGE: Es el mensaje para validar según el esquema.

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

    • SCHEMA_NAME: Es el nombre o la ruta de acceso completa de un esquema existente.

    • TYPE: Es el tipo de esquema intercalado. Especifica uno de los los siguientes valores: avro o protocol-buffer.

    • DEFINITION: Es la definición de esquema intercalado.

    • DEFINITION_FILE: Es el archivo que contiene la definición de esquema.

¿Qué sigue?