Aprenda los conceptos de la cola de corriente de datos
cuando se utiliza con las comprobaciones de las autorizaciones de publicación y suscripción de WebSphere MQ Publicación/Suscripción.
En la
WebSphere MQ Publicación/Suscripción, todas las
comprobaciones sobre autorizaciones de publicación y suscripción se
realizan con la cola de corriente de datos:
- Las aplicaciones de publicación deben tener la autorización para transferir
mensajes a la cola de corriente de datos.
- El intermediario de WebSphere MQ Publicación/Suscripción comprueba
la autorización de las aplicaciones de suscripción que desean examinar la cola de corriente de datos.
- Las aplicaciones de suscripción requieren autorización para transferir
mensajes a la cola que se ha indicado como receptora de sus publicaciones.
Los intermediarios de WebSphere Message Broker realizan una comprobación similar, pero las comprobaciones no se realizan para autorización de suscripción o examen. En su lugar, WebSphere Message Broker utiliza listas de control de acceso (ACL), que pueden crearse utilizando el
entorno de trabajo, para proporcionar las autorizaciones necesarias sobre temas individuales.
Antes de migrar un intermediario de
WebSphere MQ Publicación/Suscripción a
WebSphere Message Broker, o de migrar las aplicaciones de
WebSphere MQ Publicación/Suscripción para que se ejecuten
en un
WebSphere Message Broker, ha de tener en cuenta las siguientes implicaciones en cuanto a seguridad:
- Las aplicaciones de publicar están sujetas a las mismas comprobaciones incluso si el intermediario no está funcionando con la seguridad de
temas habilitada, debido a que la autorización para transferir un mensaje a la cola de corriente de datos o de publicación
sigue siendo comprobada por WebSphere MQ.
No obstante, las publicaciones de corrientes de datos puede procesarlas
WebSphere Message Broker en cualquier cola de entrada, puesto que los publicadores ya no necesitan
colocar los datos en una cola con el mismo nombre de la corriente. Por lo tanto, establezca ACL equivalentes para todas las corrientes de datos utilizando los calificadores de nivel de tema correspondientes.
- El intermediario de WebSphere Message Broker no comprueba si las aplicaciones de suscripción tienen
autorización para examinar la cola de corriente de datos. En vez de esto, WebSphere Message Broker modela las corrientes de datos prefijando todos los temas que no formen parte de la corriente de datos
predeterminada con un único prefijo, $SYS/STREAM/<streamname>/.
Este prefijo mantiene las características de particionamiento de las corrientes de datos y también permite que se creen las ACL específicas de la corriente de datos. Como el intermediario no modifica los temas de la corriente de datos predeterminada, se puede utilizar el tema raíz
para especificar autorizaciones para los temas de corriente de datos predeterminada.
El diagrama siguiente muestra las autorizaciones sobre corriente de datos que se requieren.
En el ejemplo se presupone que ha actualizado la ACL predeterminada en el tema raíz para el principal
PublicGroup dando a las autorizaciones para publicar, suscribir y para la entrega persistente
el valor
deny.
Utilizando este ejemplo, se supone que se han definido los siguientes grupos:
- PDefault: el grupo de usuarios que están autorizados para publicar en la
corriente de datos predeterminada
- SDefault: el grupo de usuarios que están autorizados para suscribirse a la
corriente de datos predeterminada
- PStreamX: El grupo de usuarios que están autorizados para publicar en
StreamX
- SStreamX: El grupo de usuarios que están autorizados para suscribirse a
StreamX
- PStreamY: El grupo de usuarios que están autorizados para publicar en
StreamY
- SStreamY: El grupo de usuarios que están autorizados para suscribirse a
StreamY
Debe otorgar y denegar las autorizaciones creando las ACL como sigue:
- A PDefault se le ha de otorgar autorización de publicar en el tema raíz, y a SDefault se le ha de otorgar
la autorización de suscripción al tema raíz.
- A PDefault se le ha de denegar la autorización de publicar en $SYS/STREAM/, y a SDefault
se le ha de denegar la autorización de suscripción a $SYS/STREAM/.
Estos valores aseguran que los publicadores y
suscriptores de la corriente de datos predeterminada no podrán publicar en ni suscribirse a otras corrientes de datos sin
tener una ACL explícita que altere temporalmente el valor pertinente.
- PStreamX ha de tener autorización de publicación sobre $SYS/STREAM/StreamX/ y
SStreamX ha de tener autorización de suscripción a $SYS/STREAM/StreamX/.
Estos valores alteran temporalmente cualquier valor que haya en temas padres y
limita la actividad de publicación y suscripción a usuarios que estén dentro de esos grupos específicos.
- PStreamY ha de tener autorización de publicación sobre $SYS/STREAM/StreamY/ y SStreamY ha de tener autorización de
suscripción a $SYS/STREAM/StreamY/.
Estos valores alteran temporalmente cualquier valor que haya en temas padres y
limita la actividad de publicación y suscripción a usuarios que estén dentro de esos grupos específicos.
Si desea establecer excepciones a lo anterior, puede hacerlo introduciendo una
ACL en el punto adecuado. Por ejemplo, si desea otorgar autorización a los publicadores sobre la corriente de datos predeterminada, PDefault, para que puedan publicar en StreamX, deberá crear un
ACL explícita en el punto (3) para proporcionar dicha autorización; este valor altera temporalmente la denegación de autorización en el punto (2). En este ejemplo, los usuarios de PDefault siguen pudiendo publicar en StreamY.