Propagar señales de seguridad
En este ejemplo, las señales de seguridad se propagan mediante la seguridad de servicios web, la infraestructura de WebSphere Application Server y la seguridad Java™ EE (Java Platform, Enterprise Edition).
Importante: Hay una diferencia importante entre las aplicaciones
de la versión 5.x y la versión 6 y posteriores. La información sólo da soporte a aplicaciones de la versión 5.x que se utilizan con WebSphere Application Server Versión 6.0.x y posteriores. La información no se aplica a las aplicaciones de la versión 6.0.x y posteriores.
Caso de ejemplo
En este ejemplo, el Cliente 1 invoca los servicios web 1. A continuación, los servicios web 1 llaman al archivo EJB (Enterprise JavaBeans) 2. El archivo EJB 2 llama a los servicios web 3 y los servicios web 3 llaman a los servicios web 4.
Figura 1. Propagar señales de seguridad

En la figura anterior se muestran las señales de seguridad propagados mediante la seguridad de servicios web, la infraestructura de WebSphere Application Server y la seguridad Java EE (Java Platform, Enterprise Edition). Se han configurado los servicios Web 1 para aceptar sólo
<wsse:UsernameToken> y utilizar el método de autenticación
BasicAuth.
No obstante, se han configurado los servicios 4 para aceptar
<wsse:UsernameToken> utilizando el método de autenticación
BasicAuth o LPTA (Lightweight Third Party Authentication) como
<wsse:BinarySecurityToken>. Los siguientes pasos describen el caso de ejemplo de la figura anterior:
- El cliente 1 envía un mensaje SOAP a los servicios Web 1 con user1 y password en el elemento <wsse:UsernameToken>.
- Los valores de user1 y password se autentican mediante el tiempo de ejecución de Web Services Security y se establecen en el contexto de seguridad actual como el sujeto JAAS (Java Authentication and Authorization Service).
- Los servicios web 1 invocan el archivo EJB 2 utilizando el protocolo RMI/IIOP (Remote Method Invocation over the Internet Inter-ORB Protocol).
- La identidad de user1 se propaga a la llamada en sentido descendente.
- El contenedor EJB del archivo EJB 2 realiza una comprobación de autorización en user1.
- El archivo EJB 2 llama a los servicios web 3 y éstos se configuran para aceptar señales LTPA.
- El rol RunAs del archivo EJB 2 se establece para user2.
- La implementación LTPA CallbackHandler extrae el símbolo LTPA del sujeto JAAS actual del contexto de seguridad y el tiempo de ejecución de Web Services Security inserta el símbolo como <wsse: BinarySecurityToken> en la cabecera SOAP.
- El tiempo de ejecución de Web Services Security de los servicios web 3 llama a la configuración de inicio de sesión JAAS para validar la señal LTPA y establecerla en el contexto de seguridad actual como el sujeto JAAS.
- Los servicios web 3 se configuran para enviar la seguridad LTPA a los servicios web 4. En este caso, debe suponer que el rol RunAs no se ha configurado para los servicios web 3. La señal LTPA de user2 se propaga a los servicios web 4.
- El cliente 2 utiliza el elemento <wsse:UsernameToken> para propagar los datos de autenticación básica a los servicios Web 4.
Web Services Security complementa el tiempo de ejecución de seguridad de WebSphere Application Server y la seguridad basada en roles de Java EE. Este ejemplo demuestra cómo propagar señales de seguridad en varios recursos como servicios web y archivos EJB.