Habilitación de Secure Conversation
Utilice Secure Conversation para proteger los mensajes de la aplicación de servicios web.
Antes de empezar
Las aplicaciones que contienen servicios web se deben haber desplegado.
Acerca de esta tarea
La especificación del borrador de WS-SecureConversation (Web Services Secure Conversation) de OASIS (Organization for the Advancement of Structured Information Standards) describe métodos para establecer una sesión segura entre el iniciador y el destinatario de mensajes SOAP. La especificación del borrador WS-SecureConversation también define cómo utilizar el protocolo Web Services Trust (WS-Trust) de OASIS para establecer una señal de contexto de seguridad (SCT). Si desea información completa, consulte la especificación de Web Services Secure Conversation de OASIS.
WebSphere Application Server soporta la capacidad de un punto final de emitir una señal de contexto de seguridad para WS-SecureConversation, y a través de ella proporciona una sesión segura entre el iniciador y el destinatario de mensajes SOAP.
En la figura siguiente se describe el flujo que es necesario para establecer un contexto protegido y para utilizar la seguridad basada en la sesión.

- El cliente envía una solicitud de confianza RST
(RequestSecurityToken) de una señal de contexto de seguridad a un punto final de aplicación con su clave secreta
(entropía y tamaño de clave de destino) y solicita la clave secreta del servicio de destino.
Generalmente, esta petición está protegida por la seguridad de servicios Web asimétrica que se ha definido en la política de rutina de arranque.
- El servicio de confianza procesa el RST y si, según la política de seguridad, la solicitud es de confianza, el servicio de confianza devuelve la señal de contexto de seguridad con la clave secreta del dispositivo de destino utilizando RSTR (RequestSecurityTokenResponse) de WS-Trust.
Generalmente, esta solicitud está protegida por la seguridad de servicios web asimétrica. El cliente verifica si RSTR es de confianza, basándose en la política de rutina de arranque.
- Si RequestSecurityTokenResponse es de confianza, el cliente protege (firma y cifra) los mensajes de aplicación siguientes utilizando las claves de sesión.
Las claves de sesión se derivan del secreto de la señal de contexto de seguridad que se obtiene de los mensajes RequestSecurityToken y RequestSecurityTokenResponse de WS-Trust iniciales que el iniciador y el destinatario intercambian.
- La especificación define un algoritmo sobre cómo se deriva la clave basándose en el secreto inicial. El servicio web de destino calcula la clave de derivación a partir de los metadatos contenidos en la cabecera de seguridad del mensaje SOAP y el secreto inicial.
- El servicio web de destino utiliza la clave derivada para verificar y descifrar el mensaje basándose en la política de seguridad de la aplicación.
- El servicio web de destino utiliza la clave derivada a partir del secreto para firmar y cifrar la respuesta basándose en la política de seguridad de la aplicación.
- Repita los pasos 3 a 6 hasta que se haya completado el intercambio de mensajes.
En la especificación WS-SecureConversation, un contexto de seguridad está representado por la señal de seguridad <wsc:SecurityContextToken>. En el ejemplo siguiente, se representa la sintaxis de confirmación de un elemento <wsc:SecurityContextToken>.
<wsc:SecurityContextToken wsu:Id="..." ...>
<wsc:Identifier>...</wsc:Identifier>
<wsc:Instance>...</wsc:Instance>
...
</wsc:SecurityContextToken>
La señal de contexto de seguridad no soporta referencias utilizando los identificadores de clave, ni los nombres de clave. Todas las referencias deben utilizar un ID (en un atributo wsu:Id) o <wsse:Reference> en el elemento <wsc:Identifier>.
WebSphere Application Server proporciona estas políticas relacionadas con Secure Conversation preconfiguradas:
- El conjunto de políticas SecureConveration sigue las especificaciones WS-SecureConversation y WS-Security y proporciona un conjunto de políticas con Secure Conversation habilitada y utiliza las claves derivadas de la señal de contexto de seguridad para la firma y el cifrado de los mensajes de aplicación.
- El conjunto de políticas Username SecureConversation sigue las especificaciones WS-SecureConversation y WS-Security y añade la autenticación utilizando la señal Username.
- La política LTPA SecureConversation sigue las especificaciones WS-SecureConversation y WS-Security y proporciona la autenticación utilizando las señales LTPA (Lightweight Third Party Authentication).
En este ejemplo, el conjunto de políticas SecureConversation predeterminado, y el enlace WS-Security predeterminado y el enlace TrustServiceSecurityDefault se utilizan para conseguir la tarea de habilitar Secure Conversation. El conjunto de políticas SecureConversation predeterminado dispone de ambas políticas, la política de aplicación (symmetricBinding) y la política del programa de arranque (asymmetricBinding). La política de la aplicación se utiliza para proteger los mensajes de aplicación y la política del programa de arranque se utiliza para proteger los mensajes RST (RequestSecurityToken).
Un servicio de confianza que emite una señal de contexto de seguridad se configura con la política del sistema TrustServiceSecurityDefault y el enlace TrustServiceSecurityDefault. La política de confianza es responsable de proteger los mensajes RSTR (RequestSecurityTokenResponse). Si se modifica la política del programa de arranque, la política de confianza se debe modificar para coincidir con ambas configuraciones.
Los enlaces predeterminados de WS-Security (Web Services Security) que se utilizan aquí contienen archivos de claves de ejemplo y se deben personalizar, antes de utilizarlos en la producción. Para el entorno de producción, se recomienda el uso de los enlaces personalizados. Además, tenga en cuenta que si el perfil se crea utilizando la opción Create the server using the development template (Crear el servidor utilizando la plantilla de desarrollo), puede saltar los pasos 2 y 3.
Para configurar Secure Conversation, configure el conjunto de políticas y añada una aserción de política a la política, complete los pasos siguientes:
Procedimiento
Resultados
Qué hacer a continuación
A continuación, revise el escenario de ejemplo sobre cómo establecer una señal de contexto de seguridad para proteger Secure Conversation.