De forma predeterminada, el servicio SSO guarda las sesiones en un almacén clave-valor distribuido de clúster que proporciona consul. Esto ofrece una gran tolerancia a fallos y garantiza por diseño la seguridad de lectura y escritura. En cambio, en sitios de gran volumen puede penalizar el rendimiento.
Para solucionarlo, la solución incluye varios mecanismos de almacenamiento de sesiones que permiten guardar las sesiones en una base de datos relacional externa o en el servicio REDIS incluido en Notakey Authentication Appliance.
Suponiendo que el servicio REDIS está configurado con VRRP en la dirección 10.0.1.98, para cambiar al almacenamiento REDIS ejecute los siguientes comandos de configuración:
ntk cfg set :sso.base.\"store.type\" "redis"
ntk cfg set :sso.base.\"store.redis.host\" "10.0.1.98"
Si usa un solo nodo o no usa VRRP, sustituya 10.0.1.98 por redis, que es el
nombre interno de este servicio. Consulte
Configurar el servicio REDIS con VRRP
para más detalles.
Recuerde que, tras cualquier cambio de configuración, debe reiniciar todas las
instancias del servicio con ntk sso restart. Tenga en cuenta también que
actualmente no existe forma de migrar de un tipo de almacenamiento de sesiones a
otro, por lo que todas las sesiones activas quedarán invalidadas tras reiniciar
el servicio.
Tras los cambios, asegúrese de que las sesiones se pueblan en REDIS (ejecute el comando en el nodo donde está el servicio REDIS, p. ej. MASTER):
docker exec -it redis redis-cli -n 0
> keys sso.*