Utilización de autentificación para las conexiones Real-time

Los servicios de autentificación de WebSphere Business Integration Event Broker proporcionan un recurso opcional cuyo soporte se realiza entre los clientes JMS y los nodos Real-timeInput de WebSphere Business Integration Event Broker.

En una configuración por omisión, los servicios de autentificación están inhabilitados.

Para configurar el producto a fin de que utilice los servicios de autentificación, complete los pasos siguientes.

Configuración del servidor de nombres de usuarios

El Servidor de nombres de usuarios distribuye a los intermediarios la información (específicamente las contraseñas) necesaria para dar soporte a estos protocolos de autentificación.

Para configurar el Servidor de nombres de usuarios para que dé soporte a la autentificación, se proporcionan dos parámetros para los mandatos mqsicreateusernameserver y mqsichangeusernameserver.

El primer parámetro, AuthProtocolDataSource, describe la ubicación de un archivo de sistema operativo que contiene la información necesaria para dar soporte a los protocolos de autentificación.

El segundo parámetro, el distintivo -j, indica si el archivo al que apunta el parámetro AuthProtocolDataSource contiene información de grupo y de pertenencia a grupo, así como información de contraseña.

El mandato mqsichangeusernameserver da soporte también al distintivo -d para inhabilitar la opción.

Configuración de un intermediario

Configure un intermediario para que dé soporte a los servicios de autentificación de WebSphere Business Integration Event Broker. Debe especificar dos parámetros de autentificación y control de accesos, y utilizar el área de trabajo para configurar los nodos Real-timeInput adecuados y los conjuntos de protocolos a los que va a darse soporte en el intermediario.

Los pasos siguientes muestran la manera de hacerlo:

Archivos de contraseña de ejemplo

Con WebSphere Business Integration Event Broker se envían dos archivos de ejemplo, denominados password.dat y pwgroup.dat.

pwgroup.dat es un archivo de ejemplo que puede utilizarse al establecer el distintivo -j.

password.dat es un archivo de ejemplo que puede utilizarse en el caso por omisión.

password.dat tiene el diseño siguiente:
#
This is a password file.

# Each line contains two required tokens delimited by
# commas. The first is a user ID, the second is that user's
# password.

#USERNAME PASSWORD
========================
subscriber,subpw
admin,adminpw
publisher,pubpw 
Este archivo complementa la información de usuario y de grupo que el servidor de nombres de usuarios extrae del sistema operativo. El dominio de intermediarios trata como desconocidos los nombres de usuario definidos en el archivo, pero no en el sistema operativo. Los nombres de usuario definidos en el sistema operativo, pero no en el archivo de contraseña, tienen denegado el acceso al sistema.

pwgroup.dat contiene información de grupo así como información de usuario y de contraseña. Cada entrada de usuario incluye una lista de nombres de grupo en la que se especifican los grupos en que se encuentra el usuario.

pwgroup.dat tiene el diseño siguiente:
#This is a password file.
#Each line contains two or more required tokens delimited by
#commas.The first is a user ID and the second is that user's
#password. All subsequent tokens 
#specify the set of groups that the user belongs to.  

#USERNAME PASSWORD  GROUPS 
subscriber,subpw,group1,group2,group3 
admin,adminpw,group2 
publisher,pubpw,group2,group4 
Como se ha mencionado anteriormente, este archivo puede utilizarse para proporcionar la única fuente de información de usuario, grupo y contraseña para el dominio de intermediarios.

Para difundir información actualizada de usuario y contraseña en la red de intermediarios si la información se extrae de un archivo de sistema operativo, detenga el servidor de nombres de usuarios y los intermediarios, actualice el archivo y, a continuación, reinicie el servidor de nombres de usuarios y los intermediarios.

Si las contraseñas se extraen del sistema operativo, las actualizaciones se distribuirán automáticamente a los intermediarios. Utilice herramientas de gestión normales de sistema operativo para cambiar usuarios o contraseñas.

Autentificación en el cliente JMS

Para las aplicaciones cliente que utilizan clases de WebSphere MQ para Java Message Service versión 5.3 antes del CSD4, la aplicación cliente siempre tiene un nivel de protocolo de autentificación de PM. La aplicación cliente y el intermediario negocian el tipo de protocolo que debe elegirse para una sesión. Cuando el intermediario da soporte a ambos protocolos (es decir, se ha establecido PM o MP en la definición de área de trabajo de un intermediario), se elige el primer protocolo especificado en el área de trabajo.

Para las aplicaciones cliente que utilizan clases de WebSphere MQ para Java Message Service versión 5.3, CSD 5 o posterior, la aplicación cliente soporta dos niveles de autentificación.

Puede configurarse TopicConnectionFactor para que dé soporte a una modalidad de autentificación MQJMS_DIRECTAUTH_BASIC o a una modalidad de autentificación MQJMS_DIRECTAUTH_CERTIFICATE. La modalidad de autentificación MQJMS_DIRECTAUTH_BASIC es equivalente a un nivel de PM, y la modalidad de autentificación MQJMS_DIRECTAUTH_CERTIFICATE es equivalente a un nivel de SR.

Si los servicios de autentificación se han configurado correctamente para un nodo Real-timeInput, una aplicación cliente JMS deberá especificar sus credenciales al crear una conexión. Para hacerlo, la aplicación cliente JMS suministra una combinación de usuario/contraseña al método TopicConnectionFactory.createTopicConnection; por ejemplo:
factory.createTopicConnection("user1", "user1pw");

Si no se especifican credenciales, o no se especifican correctamente, la aplicación recibe una excepción derivada JMS que contiene el texto de error MQJMS.

Conceptos relacionados
Servicios de autentificación

Tareas relacionadas
Creación de un Servidor de nombres de usuarios
Creación de un flujo de mensajes

Referencia relacionada
Mandato mqsicreatebroker
Mandato mqsichangebroker
Mandato mqsicreateusernameserver
Mandato mqsichangeusernameserver
Nodo Real-timeInput
Nodo Real-timeOptimizedFlow