Contexts
Los contextos son una división lógica que funciona como marcador en la URL de publicación de eventos. Con ellos, los tópicos pueden reutilizarse en distintos escenarios.
El servidor externo de autorización se define por contexto. Esto significa que cuando se disponibilizan dos contextos diferentes para un tópico, es posible utilizar dos endpoints de autorización distintos para el mismo tópico.
La pantalla Contexts lista todos los contextos registrados en su Events Hub:
Cómo funciona
Para entender cómo funcionan los contextos, es importante entender cómo Events Hub coordina la publicación y suscripción a eventos:
-
Los publicadores de eventos (publishers) envían solicitudes a Events Hub, que las distribuye a todos los suscriptores (subscribers) registrados.
-
Para asegurar que los eventos del publicador se entreguen a los suscriptores correctos, Events Hub utiliza tópicos.
-
Cada tópico puede tener varios suscriptores.
-
Cuando un publicador envía un evento a un tópico específico, Events Hub distribuye ese evento a todos los suscriptores vinculados al tópico.
URL de publicación de eventos
Para publicar eventos, es necesario crear una ruta (URL) que sirva como canal de envío de eventos desde un publicador hasta el Events Hub.
Esta URL se compone de la URL base + context + handler + topic
:
-
URL base: es definida por el Events Hub. Incluye la dirección de la interfaz de cada cliente +
event-receiver
+ un código único (hash). -
Contexto, handler y tópico: son creados por usted. Le ayudan a organizar y gestionar los diferentes canales de publicación.
-
El tópico es el nivel más específico.
-
Los handlers son los agregadores de tópicos y sirven como una capa lógica de agrupamiento.
-
Los contextos añaden otro nivel de agrupamiento, lo que permite utilizar el mismo tópico en diferentes situaciones. Para habilitar un tópico para un publicador, es necesario activarlo en al menos un contexto.
-
Imagina que deseas crear un flujo de publicación de varios tipos de alerta y probarlo sin notificar a los suscriptores. Para hacerlo, puede:
|
Teniendo en cuenta el ejemplo anterior, las URLs de publicación para el tópico latency
serán:
-
Contexto Default:
<url-base>/alerts/latency
-
Contexto Testing:
<url-base>/testing/alerts/latency
La principal ventaja de utilizar diferentes contextos es que puede reutilizar las configuraciones de políticas de seguridad y de entrega definidas en el handler, sin necesidad de crear nuevos tópicos. Dado que los endpoints de autorización se definen por contexto, puede usar un mock de autorización para pruebas mientras mantienes inalterada la autorización del contexto predeterminado.
|
Autorización
Los endpoints que validan a los publicadores se definen para cada contexto. Esto se realiza en la pantalla Authorizations, que contiene dos secciones: OAUTH y JWT. En ambas se muestran todos los contextos registrados en su Events Hub, indicando la URL de autorización que está definida para cada uno.
El uso de interceptores de seguridad es opcional. Sin embargo, si agrega políticas a su handler, debe configurar la URL de autorización vinculada al interceptor. Excepto por el "IP Filtering Validation", todos dependen de esta configuración para funcionar.
Vea cómo usar la Sensedia API Platform para la autorización de publicadores. |
Vinculación de contextos
Los contextos se vinculan a los tópicos a través de la pestaña TOPICS al crear o editar handlers. Para publicar eventos, se relacionan los tópicos y sus contextos con los publicadores y suscriptores. Esto se hace de la siguiente manera:
-
Publicadores: En el paso TOPICS durante el registro del publicador, seleccione los tópicos deseados. Verá los contextos disponibles para cada tópico.
-
Elija en cuál el publicador tendrá permiso para publicar.
-
-
Suscriptores: Al registrar un suscriptor, debe inscribirlo en los tópicos de los que recibirá eventos. Habilitando los contextos del tópico para él, solo recibirá eventos de los publicadores activos en ese contexto.
-
En el registro del suscriptor, en el paso TOPICS, seleccione los tópicos deseados. Verá los contextos disponibles para cada tópico.
-
Elija de cuál suscriptor recibirá eventos.
-
Creando contextos
Puedes crear hasta 5 contextos en Events Hub. El contexto "Default" es predeterminado y no se puede editar ni eliminar.
Cuando alcances el límite de contextos creados, el botón + se desactivará, impidiendo el registro. Si necesitas un nuevo contexto, deberás eliminar uno de los existentes. |
Para crear un nuevo contexto, haz clic en el botón +. Completa los campos:
-
Name: nombre único identificador del contexto.
-
Path: ruta del contexto, que servirá como marcador de la URL de publicación.
-
Description: descripción opcional para el contexto.
Después de registrarlo, el contexto se mostrará en el paso TOPICS de la creación/edición de los handlers y se podrá habilitar para cualquier tópico.
Overview de contextos
Al hacer clic en el nombre de un contexto, verás los tópicos vinculados a él. En esta pantalla, puedes:
-
buscar un tópico usando el campo Keywords. La búsqueda se realiza por nombre o descripción de los tópicos y nombre del handler;
-
editar el contexto con el botón EDIT CONTEXT. Esta opción permite editar el nombre, path, y la descripción del contexto;
-
ver detalles de un tema haciendo clic en el nombre en la columna Handler. Al hacerlo, serás dirigido a la pestaña TOPICS en la página de Handlers;
-
eliminar el contexto haciendo clic en el ícono .
Solo es posible eliminar contextos que no están asociados a ningún tópico. Si lo están, deberás deshabilitar el contexto en cada tópico para poder eliminarlo. |
Share your suggestions with us!
Click here and then [+ Submit idea]