En este documento, se muestra cómo validar esquemas para temas de Pub/Sub.
Puedes validar que los mensajes se adhieran a un esquema determinado, antes o después de que crees un recurso de esquema. Este paso garantiza que los mensajes que deseas enviar a través de un tema asociado con un esquema coincidan antes de aplicar el esquema.
Antes de comenzar
- Comprende cómo funcionan los esquemas de Pub/Sub.
- Crea un esquema.
Roles y permisos requeridos
Para obtener los permisos que necesitas para validar y administrar mensajes de esquema,
pídele 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 a proyectos, carpetas y organizaciones.
Este rol predefinido contiene los permisos necesarios para validar y administrar mensajes de esquema. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:
Permisos necesarios
Se requieren los siguientes permisos para validar y administrar mensajes de esquema:
-
Crea un esquema:
pubsub.schemas.create
-
Adjunta el esquema al tema:
pubsub.schemas.attach
-
Confirma una revisión del esquema:
pubsub.schemas.commit
-
Borra un esquema o una revisión del esquema:
pubsub.schemas.delete
-
Obtén un esquema o revisiones de esquemas:
pubsub.schemas.get
-
Esquemas de lista:
pubsub.schemas.list
-
Enumera las revisiones del esquema:
pubsub.schemas.listRevisions
-
Cómo revertir 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 y adjuntarlo a un tema ubicado en otro proyecto. Asegúrate de tener los permisos necesarios para cada proyecto.
Valida un mensaje para un esquema
Console
En la consola de Google Cloud , ve a la página Esquemas de Pub/Sub.
Se muestra la lista de esquemas.
Haz clic en el ID de esquema de un esquema existente.
Se abrirá la página Detalles del esquema.
En la sección Revisiones, haz clic en la revisión para la que deseas validar un mensaje.
En la sección Detalles, haz clic en Mensaje de prueba.
En la ventana Test message, selecciona un tipo de Codificación de mensajes.
En el cuerpo del Mensaje, ingresa un mensaje de prueba.
Haga clic en Probar.
gcloud
-
In the Google Cloud console, 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.
- Para validar un mensaje en función de 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))
Reemplaza lo siguiente:
MESSAGE: Mensaje para validar en el esquema
MESSAGE_ENCODING: Es la codificación del mensaje. Especifica uno de los siguientes valores:
binary
ojson
.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 siguientes valores:
avro
oprotocol-buffer
.DEFINITION: Es la definición de esquema intercalado.
DEFINITION_FILE: Es el archivo que contiene la definición del esquema.