Cuando haya creado una base de datos de usuario, debe otorgar autorización al intermediario y a los grupos de ejecución para que puedan acceder a ella.
Utilice el mandato mqsisetdbparms para especificar un ID de usuario y una contraseña que el intermediario pueda utilizar para acceder a la base de datos. Si desea definir un ID de usuario y una contraseña que el intermediario pueda utilizar si no ha definido valores específicos para una base de datos en concreto, ejecute el mandato mqsisetdbparms y establezca dsn::DSN como valor de NombreRecurso con el ID de usuario y la contraseña que haya elegido.
Si ha migrado el intermediario de un release anterior, el intermediario accedía a la base de datos para su propio uso y es posible que haya definido el ID de usuario y la contraseña utilizados para acceder a dicha base de datos especificando un ID de usuario y una contraseña de conexión de base de datos con los parámetros -u y -p en el mandato mqsicreatebroker. Como alternativa, es posible que haya utilizado el ID de usuario de servicio del intermediario y su contraseña (especificada con los parámetros -i y -a en el mismo mandato). Al migrar el intermediario, estos parámetros se migran y se almacenan y el intermediario migrado los utiliza para acceder a las bases de datos que no tienen definido un acceso mediante ID específico.
El intermediario utiliza los valores y el orden de preferencia siguientes:
Sólo en z/OS, si no especifica una contraseña cuando especifica dsn::DSN en el parámetro -n, el intermediario se conecta a la base de datos DB2 con su ID de usuario de tarea iniciada. El intermediario utiliza el ID de usuario que ha especificado en el mandato cuando crea una sentencia SQL totalmente calificada, como en ESQL, para procedimientos almacenados. Para sentencias SQL que no son para procedimientos almacenados, en las que no se especifica el esquema, DB2 utiliza el valor CURRENTSQLID. Si no ha especificado un valor CURRENTSQLID, el intermediario utiliza el ID de usuario que ha especificado en el mandato mqsisetdbparms. Si no ha proporcionado un ID de usuario mediante ese mandato, DB2 utiliza el ID de tarea iniciada del intermediario.
Si espera desplegar flujos de mensajes que formen parte de transacciones coordinadas globalmente a un intermediario, debe proporcionar autorizaciones suplementarias. Para obtener más información, consulte Configurar bases de datos para la coordinación global de transacciones.
La forma de autorizar el acceso depende del gestor de bases de datos que esté utilizando y de la plataforma donde haya creado la base de datos. Las instrucciones también pueden variar de release en release de una sola base de datos. Consulte a su administrador de base de datos o revise la documentación de la base de datos adecuada cuando realice esta tarea.
En los apartados siguientes se proporcionan ejemplos de los pasos que puede realizar para proporcionar la autorización necesaria para las bases de datos específicas:
Para autorizar el acceso a una base de datos DB2, puede utilizar el Centro de control de DB2 o la línea de mandatos de DB2:
Para autorizar el acceso a una base de datos Oracle: