Puede configurar Liberty para integrarlo 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 servidor de autenticación frontal cuando el servidor de Liberty aplica su propia política de autorización a las credenciales resultantes que pasa 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
Un TAI se utiliza para validar las solicitudes HTTP entre un servidor de seguridad de terceros y un servidor de 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
por parte de TAI resulta satisfactorio, el servidor de Liberty autoriza la solicitud comprobando si el
usuario de cliente tiene los permisos necesarios 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.
Puede también utilizar las herramientas del desarrollador para configurar un servicio TAI.
Para obtener más información sobre el soporte de herramientas, consulte Configuración de TAI en Liberty utilizando las herramientas del desarrollador.
Procedimiento
- Habilite la característica de Liberty de appSecurity-2.0 en el archivo server.xml.
<featureManager>
<feature>appSecurity-2.0</feature>
</featureManager>
- Despliegue las aplicaciones en el servidor de 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.