Puede configurar
Liberty para
integrarse con un servicio de seguridad de terceros utilizando TAI
(Trust Association Interceptors). TAI se puede invocar antes o después del inicio de sesión único (SSO).
Antes de empezar
Asegúrese de que ya ha instalado un servidor de seguridad de terceros como
servidor proxy inverso. El servidor de seguridad de terceros puede
actuar como un servidor de autenticación frontal cuando el servidor
Liberty aplica
su propia política de autorización en las credenciales
resultantes, que se pasan mediante el servidor proxy. Debe tener también
un archivo JAR que contiene la clase TAI personalizada, que implementa la interfaz
com.ibm.wsspi.security.tai.TrustAssociationInterceptor.
Nota: No se ofrece
soporte para supervisar los cambios de este archivo JAR.
Acerca de esta tarea
Se utiliza un TAI para validar solicitudes HTTP
entre un servidor de seguridad de terceros y un servidor Liberty. La clase TAI inspecciona
las solicitudes HTTP del servidor de seguridad de terceros para ver si contienen atributos de seguridad.
Si
el proceso de validación de una solicitud mediante el TAI se ha
realizado correctamente, el servidor Liberty autoriza
la solicitud comprobando si el usuario del cliente tiene el
permiso necesario para acceder a los recursos.
Para obtener más información de TAI
y la configuración SSO con LTPA, consulte Desarrollo de un TAI personalizado para Liberty y Personalización de la configuración de SSO utilizando cookies LTPA en Liberty.
Procedimiento
- Habilite la característica
appSecurity-2.0
Liberty en
el archivo server.xml.
<featureManager>
<feature>appSecurity-2.0</feature>
</featureManager>
- Despliegue las aplicaciones en el servidor
Liberty y
habilite todas las características de
Liberty
como, por ejemplo, jsp-2.2 y jdbc-4.0.
- Coloque la biblioteca de implementación de TAI simpleTAI.jar en el directorio de servidor.
- Actualice el archivo server.xml con las opciones de configuración del
TAI y la ubicación de la biblioteca de implementación de TAI.
En el archivo
server.xml siguiente, está habilitado
el TAI personalizado, pero no realiza la autenticación de los URI
sin proteger y no permite la reserva para el método de autenticación de la aplicación
si la autenticación de TAI produce un error. Tal como se muestra en el ejemplo, los siguientes elementos de configuración están disponibles para el soporte de TAI:
- trustAssociation
- interceptores
- properties
<trustAssociation id="myTrustAssociation" invokeForUnprotectedURI="false"
failOverToAppAuthType="false">
<interceptors id="simpleTAI" enabled="true"
className="com.sample.SimpleTAI"
invokeBeforeSSO="true" invokeAfterSSO="false" libraryRef="simpleTAI">
<properties prop1="value1" prop2="value2"/>
</interceptors>
</trustAssociation>
<library id="simpleTAI">
<fileset dir="${server.config.dir}" includes="simpleTAI.jar"/>
</library>
...
Nota: El nombre de propiedad no puede comenzar por un punto (.), config. o service. Además, el nombre de propiedad id o ID no está permitido.
Nota: De forma predeterminada, la propiedad invokeBeforeSSO se establece en true. Mediante este valor, se invoca TAI incluso cuando está presente la señal SSO y es válida. Sin embargo, si el comportamiento esperado es invocar TAI solamente cuando la señal SSO no es válida o no está presente, se podrá inhabilitar esta propiedad estableciéndola en false y habilitando la propiedad invokeAfterSSO. Si utiliza este valor, se invoca TAI solamente cuando la señal SSO no está presente o no es válida. En algunos casos, esta configuración puede mejorar el rendimiento de su sistema.
Si
desea más información sobre los elementos <trustAssociation>,
<interceptors> y
<properties>, consulte JMX REST Connector 1.0.