Memoria caché de señales de cliente de servicios Web para SAML
Cuando se solicita inicialmente una señal SAML, el entorno de ejecución de servicios web copia en caché automáticamente la SAMLToken. Como resultado de esta función de almacenamiento en memoria caché de señales de cliente automática, las solicitudes de servicios web posteriores pueden utilizar la SAMLToken de la solicitud anterior.
La memoria caché de señales de cliente de servicios web para SAML habilita los clientes de servicios web para reutilizar señales SAML al acceder a servicios de empresa. La reutilización de señales SAML válidas reduce el tráfico hacia el servicio de señales de seguridad (STS) y también reduce el impacto en el rendimiento que supone el envío de mensajes de solicitud WS-Trust. Existen varios requisitos para que una señal se considere válida y, por lo tanto, para que esté disponible para almacenamiento en memoria caché y reutilización.
Para que se reutilice una señal SAML, la hora de caducidad de la señal debe ser equivalente, o posterior, a la hora actual. Se añade un margen de memoria caché a la hora actual al comparar la hora de caducidad de la señal con la hora actual para que la señal no caduque de inmediato después de que se envíe.
Además, una señal sólo es válida si se vuelve a enviar al mismo servicio empresarial. La función SAML de WebSphere Application Server no verifica la condición AudienceRestriction para la señal SAML. Un modo práctico, por lo tanto, de garantizar que se reutilice la señal SAML para el público adecuado es reutilizar la señal sólo para el mismo servicio web utilizaba originalmente la señal. Si una aserción contiene la aserción OneTimeUse, la señal SAML no se almacena en memoria caché.
- La SAMLToken debe tener un tiempo de caducidad relativamente largo y se deben dejar,
como mínimo, 5 minutos del tiempo de vida útil de la señal después de
que se complete la primera solicitud. El entorno de ejecución de WS-Security valida
el tiempo de caducidad de SAMLToken en memoria caché con un margen de memoria
caché predefinido.
El símbolo en memoria caché es válido sólo si el tiempo de vida útil de la
señal es superior al valor del margen. El valor de margen predeterminado es 5 minutos.
Este valor se puede configurar mediante la propiedad personalizada, cacheCushion.
Para alterar temporalmente el margen de memoria caché predeterminado, edite la propiedad
personalizada CallbackHandler para el generador de SAMLToken. Añada la propiedad
cacheCushion y establezca el valor de margen de memoria caché
expresado en milisegundos. Si el tiempo de vida útil está dentro del límite de margen
de memoria caché, se solicita una SAMLToken nueva.
Por ejemplo, puede cambiar el margen de memoria caché a 3 minutos o 180000 milisegundos.
Nombre de propiedad personalizada Valor cacheCushion 180000 - La señal SAML no puede contener la aserción OneTimeUse.
- Si la señal SAML está cifrada, asegúrese de que el STS comunique el tiempo de caducidad de señales fuera de la señal cifrada y que la señal SAML no incluya la aserción OneTimeUse.
Nombre de propiedad personalizada | Valor |
---|---|
cacheToken | false |