Puede configurar la aplicación web en el perfil Liberty utilizando la autenticación de cliente SSL.
Acerca de esta tarea
La autenticación de certificado de cliente se produce si el lado del servidor solicita que el lado del cliente envíe un certificado.
Un servidor WebSphere se puede configurar para la autenticación de certificado de cliente en la configuración de SSL. Para ello, añada la característica de Liberty ssl-1.0 al
archivo server.xml, junto con el código que indica
al servidor la información de almacén de claves para la autenticación.
Para obtener detalles sobre qué aspectos
de SSL se admiten, consulte Características de Liberty.
Procedimiento
- Asegúrese de que el descriptor de despliegue de la aplicación web especifique la autenticación de certificado de cliente como el método de autenticación que se va a utilizar.
Compruebe que el descriptor de despliegue incluya el elemento siguiente:
<auth-method>CLIENT-CERT</auth-method>
Nota: Puede utilizar una herramienta como
Rational Application Developer
para crear el descriptor de despliegue.
- Opcional: Genere un certificado SSL utilizando la línea de mandatos. Consulte
Mandato securityUtility.
- Configure el servidor para habilitar la autenticación de cliente SSL
añadiendo las líneas siguientes al archivo server.xml:
<featureManager>
<feature>ssl-1.0</feature>
<featureManager>
<ssl id="defaultSSLConfig" keyStoreRef="defaultKeyStore"
trustStoreRef="defaultTrustStore" clientAuthenticationSupported="true" />
<keyStore id="defaultKeyStore" location="key.jks" type="JKS" password="defaultPWD" />
<keyStore id="defaultTrustStore" location="trust.jks" type="JKS" password="defaultPWD" />
- Si especifica clientAuthentication="true", el servidor solicita
que el cliente envíe un certificado. No obstante, si el cliente no tiene
un certificado, o el certificado no es fiable para el servidor, el reconocimiento no resulta satisfactorio.
- Si especifica clientAuthenticationSupported="true", el servidor solicita que el cliente envíe un certificado. No obstante, si el cliente no tiene
un certificado, o el certificado no es fiable para el servidor, el reconocimiento podría resultar todavía satisfactorio.
- Si no especifica clientAuthentication o clientAuthenticationSupported o especifica
clientAuthentication="false" o clientAuthenticationSupported="false", el servidor no
solicita que un cliente envíe un certificado durante el reconocimiento.
- Añada un certificado de cliente al navegador. Consulte la documentación
del navegador para añadir certificados de cliente.
- Asegúrese de que el servidor confía en los certificados de cliente que se utilizan.
- Asegúrese de que los certificados de cliente utilizados para la autenticación de cliente
se correlacionan con una identidad de usuario en el registro.
- Para el registro básico, la identidad de usuario es el nombre común (CN)
del nombre distinguido (DN) del certificado.
- Para un registro LDAP (Lightweight Directory Access Protocol),
el DN del certificado de cliente debe estar en el registro LDAP.
- Para utilizar la autenticación básica, sólo el ID de usuario y la contraseña, si la autenticación de certificado de cliente no tiene éxito, añada la siguiente línea al archivo server.xml:
<webAppSecurity allowFailOverToBasicAuth="true" />
Nota: Si especifica allowFailOverToBasicAuth="false" o no especifica
allowFailOvertoBasicAuth y la autenticación de certificado de cliente
no tiene éxito, la solicitud genera un mensaje 403 Error de autenticación y no se le solicita al cliente la autenticación básica.