Autenticación de usuarios para conectarse al motor de mensajería
Debe validar las credenciales de los usuarios para que el usuario se autentique y pueda conectarse al motor de mensajería.
Procedimiento
- Configure el registro de usuario. En Liberty se admiten los tipos de registro siguientes:
- QuickStartSecurity (admite sólo un usuario).
Esta opción es la forma más sencilla de especificar un nombre de usuario y una contraseña para autenticar las conexiones de la aplicación. Puede utilizar el elemento <quickStartSecurity> para habilitar una configuración de seguridad simple (un usuario) para Liberty. Defina el siguiente elemento <quickStartSecurity> en el archivo server.xml.
En el siguiente ejemplo, el elemento <quickStartSecurity> se utiliza para definir un solo usuario, de nombre liberty, con una contraseña liberty123.<quickStartSecurity userName="liberty" userPassword="liberty123"/>
Nota: Asegúrese de no especificar la contraseña sin formato (por ejemplo, liberty123) en el archivo server.xml. Para codificar la contraseña, utilice la herramienta de programa de utilidad de seguridad que está disponible en Liberty.<WLP_HOME>\wlp\bin>securityUtility encode "liberty123"
Para obtener más información sobre cómo proteger las contraseñas, consulte securityUtility, mandato.
- Registro básico de usuarios (admite varios usuarios y declaración de grupos de
usuarios).Puede configurar Liberty para autenticar y autorizar usuarios mediante el registro de usuarios básico. Puede establecer un registro básico de usuarios y configurar correlación de varios roles en el archivo server.xml para un servidor Liberty.Nota: La configuración del registro <basicRegistry> sustituye al registro <quickStartSecurity>.
<basicRegistry id="basic" realm="customRealm"> <user name="user1" password="user1pwd" /> <user name="user2" password="user2pwd" /> <user name="user3" password="user3pwd" /> <user name="user4" password="user4pwd" /> <user name="user5" password="user5pwd" /> <user name="user6" password="user6pwd" /> <user name="user7" password="user7pwd" /> <user name="user8" password="user8pwd" /> <group name="Developers"> <member name="user2" /> <member name="user4" /> </group> <group name="Testers"> <member name="user8" /> <member name="user7" /> </group> </basicRegistry>
- Registros LDAP (Lightweight Directory Access Protocol) (registros externos como
Microsoft Active Directory e IBM Directory Server).Puede configurar un servidor LDAP con Liberty para autenticación.
<ldapRegistry id="LDAP" realm="SampleLdapIDSRealm" host="ctldap1.austin.ibm.com" port="389" ignoreCase="true" baseDN="o=ibm,c=us" ldapType="IBM Tivoli Directory Server" idsFilters="ibm_dir_server" searchTimeout="8m"> <failoverServers name="failoverLdapServers"> <server host="ralwang.rtp.raleigh.ibm.com" port="389"/> </failoverServers> </ldapRegistry>
Notas:- Cualquier nombre de usuario y contraseña que se especifique en el registro LDAP puede especificarse en la fábrica de conexiones.
- Puede definir sólo un tipo de registro en el archivo server.xml (un registro básico o un registro LDAP).
- QuickStartSecurity (admite sólo un usuario).
- Configuración de la autenticación de la aplicación. En función del registro de usuarios que se haya especificado en el archivo server.xml, puede configurar la aplicación de las siguientes maneras:Después de la configuración, es necesario asignar a los usuarios autenticados los roles necesarios para que puedan acceder a los recursos de mensajería de forma segura. Consulte Autorización de usuarios para conectarse al motor de mensajería.
- Especifique el nombre de usuario y la contraseña en los recursos JMS (es decir la
fábrica de conexiones y las propiedades de especificación de activación).La aplicación que utiliza la fábrica de conexiones se autentica contra el nombre de usuario y contraseña especificados en la fábrica de conexiones.
<jmsQueueConnectionFactory jndiName="myQCF" connectionManagerRef="ConMgr4"> <properties.wasJms userName="liberty" password="liberty123" remoteServerAddress="localhost:7276:BootstrapBasicMessaging"> </properties> </jmsQueueConnectionFactory> <connectionManager id="ConMgr4" maxPoolSize="2"/>
En el ejemplo anterior, la aplicación que busca la fábrica de conexiones de la cola myQCF se autentica automáticamente contra el nombre de usuario liberty y la contraseña liberty123 que se ha definido en el registro configurado.
Nota: La propiedad de conexión especificada busca myQCF en la vía de acceso jms/myQCF y no en la vía de accesojava:comp/env/jms/myQCF.
- Especifique el nombre de usuario y la contraseña en la aplicación JMS.Nota: El nombre de usuario y la contraseña que se especifican en la aplicación JMS prevalecen sobre el nombre de usuario y la contraseña definidos en la fábrica de conexiones.La aplicación busca la propiedad de fábrica de conexiones y pasa el nombre de usuario y la contraseña para autenticar las credenciales.
server.xml -------------------- <jmsQueueConnectionFactory jndiName="myQCF" connectionManagerRef="ConMgr4"> <properties.wasJms remoteServerAddress="localhost:7276:BootstrapBasicMessaging"> </properties> </jmsQueueConnectionFactory> <connectionManager id="ConMgr4" maxPoolSize="2"/> Fragmentos de código de la aplicación ------------------ QueueConnectionFactory qcf = (QueueConnectionFactory) new InitialContext().lookup("myQCF"); QueueConnection qCon = qcf.createQueueConnection(“liberty”, “liberty123”);
- Especifique el nombre de usuario y la contraseña en el elemento <containerAuthDataRef>.Los datos de autenticación predeterminados de la autenticación gestionada por contenedor se aplican cuando los enlaces no especifican un alias de autenticación para la referencia de recurso con res-auth=CONTAINER. Debe definirse el elemento <authData>, al que los recursos de bus de integración de servicios deben hacer referencia, como se muestra a continuación:
<authData id="auth1" user="liberty" password="liberty123"/> <jmsQueueConnectionFactory jndiName="myQCF" containerAuthDataRef=”auth1” connectionManagerRef="ConMgr4"> <properties.wasJms/> </jmsQueueConnectionFactory> <connectionManager id="ConMgr4" maxPoolSize="2"/> web.xml ---------- <resource-ref> <res-ref-name>jndi/myQCF</res-ref-name> <res-auth>Container</res-auth> <res-type>javax.jms.QueueConnectionFactory</res-type> <lookup-name>jndi/myQCF</lookup-name> </resource-ref>
- Especifique el nombre de usuario y la contraseña en los recursos JMS (es decir la
fábrica de conexiones y las propiedades de especificación de activación).

Nombre de archivo: twlp_msg_sec_authenticate.html