Habilitación de la memoria caché distribuida y la afinidad de sesiones cuando utilice Secure Conversation

WebSphere Application Server proporciona la protección a nivel de mensaje en un entorno en clúster. Puede utilizar Web Services Secure Conversation (WS-SecureConversation) para la protección a nivel de mensaje de los servicios web API de Java™ para servicios web XML 2.0 (JAX-WS) en un entorno en clúster.

Antes de empezar

Una solicitud de servicios web que está protegida con una Señal de contexto de seguridad (SCT, Security Context Token) se direcciona a un servidor de un clúster, pero ese SCT podría haberlo emitido o renovado otro servidor del clúster. Si la memoria caché distribuida de WebSphere Application Server no se configura para hacer una réplica o no se hace la réplica con la agilidad suficiente, el servidor que procesa la solicitud quizá no tenga acceso al SCT. Los pasos de la tarea descritos en este tema deben realizarse únicamente si el valor de réplica para los miembros del clúster está establecido en actualización asíncrona para la memoria caché distribuida de la seguridad de servicios web.

Para obtener más información sobre los valores de actualización de la memoria caché, consulte el tema Habilitación de la memoria caché distribuida utilizando actualización síncrona y recuperación de señales. También puede habilitar la memoria caché distribuida de los servicios web con el valor predeterminado, que habilita la actualización síncrona de los miembros del clúster.

Acerca de esta tarea

Realice los pasos siguientes de alto nivel para habilitar la memoria caché distribuida y la afinidad de sesiones al utilizar Secure Conversation para la protección a nivel de mensaje en un entorno en clúster.

Procedimiento

  1. Habilite la memoria caché distribuida para la Señal de contexto de seguridad.
    1. En la consola administrativa de WebSphere Application Server, pulse Servicios > Memoria caché de seguridad.
    2. Seleccione el recuadro de selección Habilitar colocación en memoria caché distribuida.
    3. Pulse en el botón de selección para seleccione Actualización síncrona de miembros de clúster.
    4. Pulse Aplicar y, a continuación, pulse Guardar para guardar la configuración.
  2. Cree un dominio de réplica. Realice los pasos siguientes:
    1. En la consola administrativa, pulse Entorno > Dominios de duplicación > Nuevo.
    2. Escriba un nombre. Por ejemplo, ABCDomain.
    3. En Número de duplicaciones, seleccione la opción Todo el dominio.
    4. Pulse Aceptar y, a continuación, pulse Guardar para guardar la configuración.
  3. Habilite la memoria caché dinámica. Realice estos pasos para todos los servidores del clúster:
    1. En la consola administrativa, pulse Servidores > Tipos de servidor > WebSphere Application Servers > nombre_servidor > Servicios de contenedor > Servicio de memoria caché dinámica.
    2. Seleccione la opción Habilitar la réplica de memoria caché.
    3. Seleccione el nombre de dominio que ha creado. Por ejemplo, ABCDomain.
    4. Seleccione el tipo de duplicación como Ambos, push y pull.
    5. Pulse Aceptar y, a continuación, pulse Guardar para guardar la configuración.
  4. Opcional: Cambie el intervalo de actualización del lote de memoria caché distribuida. De forma predeterminada, el intervalo de actualización de lote de memoria caché distribuida es de 1.000 milisegundos. No obstante, puede establecer este intervalo en un valor inferior a 1.000 milisegundos. Para cambiar el valor, siga estos pasos para cada servidor del clúster:
    1. En la consola administrativa, pulse Servidores > Tipos de servidor > Servidores de aplicaciones de WebSphere > nombre_servidor > Java y gestión de procesos > Definición de proceso > Máquina virtual Java > Propiedades personalizadas > Nuevo.
    2. Especifique el nombre de la propiedad com.ibm.ws.cache.CacheConfig.batchUpdateInterval.
    3. Especifique el valor de la propiedad.
    4. Pulse Aceptar y, a continuación, pulse Guardar para guardar la configuración.
  5. Instale y configure un servidor web o proxy que admita la afinidad de sesiones. IBM® HTTP Server y el servidor proxy WebSphere Application Server admiten la afinidad de sesiones. En el Information Center de WebSphere Application Server, consulte el tema "Comunicación con los servidores web" para obtener información sobre cómo instalar y configurar IBM HTTP Server.
  6. Configure los sistemas cliente para enviar las solicitudes de servicios web al host y puerto donde se ejecuta el servidor web o el servidor proxy. El servidor web o el servidor proxy a continuación envía las solicitudes al miembro de clúster adecuado.
  7. En los servicios que reciben las solicitudes de los servicios web, que están protegidos mediante Web Services Secure Conversation, seleccione la opción de política Sesión habilitada del transporte HTTP. Complete la configuración del conjunto de políticas siguiendo estos pasos:
    1. Añada la política de transporte HTTP al conjunto de políticas que los servicios están utilizando.
    2. En el panel de configuración de la política de transporte HTTP, seleccione Sesión habilitada.
    3. Pulse Aceptar y, a continuación, pulse Guardar para guardar la configuración.
  8. En los sistemas cliente que envían las solicitudes de los servicios web y que están protegidos mediante Secure Conversation, habilite la propiedad Mantener sesión del transporte HTTP. Complete la configuración del conjunto de políticas o establezca la propiedad mediante programa. Si utiliza un conjunto de políticas con la configuración, siga estos pasos:
    1. Añada la política de transporte HTTP al conjunto de políticas que los clientes están utilizando.
    2. En el panel de configuración de políticas de transporte HTTP, seleccione la opción Sesión habilitada.
    3. Pulse Aceptar y, a continuación, pulse Guardar para guardar la configuración.

Resultados

Después de que se han completado las configuraciones, habrá habilitado la memoria caché distribuida y la afinidad de sesiones al utilizar Secure Conversation en un entorno en clúster. Si el servidor que procesa la solicitud no tiene acceso al SCT, no podrá satisfacer la solicitud con el error de El SCT es nulo o no es válido.

Ejemplo

En el ejemplo siguiente, que es un fragmento de código, se muestra cómo establecer mediante programa la propiedad Sesión de mantenimiento en el objeto JAX-WS correcto.

Map<String> rc = ((BindingProvider) port).getRequestContext();
...
rc.put(BindingProvider.SESSION_MAINTAIN_PROPERTY, Boolean.TRUE);
... </String>

Icon that indicates the type of topic Task topic



Timestamp icon Last updated: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twbs_enablesecconvcluster
File name: twbs_enablesecconvcluster.html