Sesiones y Cookies
Los IDs de sesión de usuario de Clarive se almacenan en cookies en el navegador.
Hay varias opciones disponibles en el servidor Web de Clarive para configurar cómo el servidor administra las sesiones de usuario.
Configuración general de Cookies¶
Para sobrescribir los valores predeterminados, vaya a su archivo de configuración
CLARIVE_BASE/[config].yml y agregue o modifique las claves deseadas usando la
siguiente estructura YAML (tenga cuidado con la indentación):
baseliner: 'Plugin::Session': expires: 2592000 # Un mes cookie_name: clarive-session cookie_secure: 0 # 1 = sesión solo disponible en servidores HTTPS cookie_samesite: "None" # "None", "Lax" o "Strict"
Todos los cambios en el archivo .yml requieren reiniciar el servidor Web de Clarive.
cookie_name¶
Cambiar este valor alterará el nombre de la cookie que se envía a los usuarios. Cambiar este nombre cerrará la sesión de todos los usuarios y les requerirá iniciar sesión nuevamente.
expires¶
Establece el número de segundos hasta que expire una sesión, igual que la variable simple
session_expires.
Por defecto este valor está establecido en 1 mes de duración. Establecerlo en, por ejemplo 3600 cerrará la
sesión de los usuarios después de 1 hora de inactividad.
Note
Si solo desea configurar el valor de expires y nada más
use el valor simple session_expires en la configuración.
cookie_secure¶
Establezca este valor en 1 para permitir solo que los usuarios inicien sesión usando HTTPS.
Después de cambiar este valor (y reiniciar el servidor) los usuarios que accedan al
servidor Clarive a través de URLs http://... no podrán iniciar sesión en
Clarive a menos que usen una conexión HTTPS (https://...).
Los usuarios que ya iniciaron sesión cerrarán sesión después de que el servidor se reinicie.
Configure primero su servidor front-end
Recomendamos que primero y ante todo, antes de activar esta cookie para forzar a sus usuarios a conectarse a través de HTTPS, realice los cambios pertinentes en su servidor web front-end (ej. Nginx). Solo use este parámetro de configuración si no tiene acceso o control sobre su front-end y desea asegurarse de que los usuarios solo inicien sesión a través de conexiones HTTPS seguras, o como una segunda medida después de que el front-end haya sido configurado para desviar el tráfico HTTP a través de HTTPS.
cookie_samesite¶
Establezca este valor en Strict o Lax para establecer el flag SameSite de la cookie.
SameSite ayuda a prevenir ataques CSRF (Cross-site request forgery) limitando
que su cookie de sesión de Clarive se envíe solo cuando se acceda desde una sesión abierta de Clarive.
-
Lax- este es el valor recomendado, ya que previene que las cookies de sesión se envíen a sitios que solicitan recursos pero permite a los usuarios ser redirigidos a su interfaz web de Clarive a través de enlaces sin tener que iniciar sesión nuevamente. Esto se está convirtiendo en un estándar y el predeterminado en algunos navegadores. -
Strict- este valor de flag requerirá que los usuarios vuelvan a iniciar sesión en el servidor web de Clarive al hacer clic en cualquier enlace que redirija al servidor web de Clarive. Puede ser molesto para los usuarios tener que ingresar sus credenciales cada vez, pero resulta en una instalación más segura. -
None- este flag deshabilitará explícitamente toda seguridadSameSite. Esto no se recomienda en este momento, pero a medida que los navegadores comiencen a implementarSameSitepor defecto, lo que puede resultar en molestias para sus usuarios, es posible que desee establecerlo enNonepara decirle a los navegadores (como Chrome 76) que permitan que su cookie de sesión de Clarive se envíe a través de sitios. -
0(predeterminado) - el valor cero evita que el flagSameSitesea enviado por el servidor web de Clarive.
Note
La configuración de cookie SameSite es un nuevo estándar introducido
en 2017 y algunos navegadores pueden no respetarlo. Verifique la versión de su navegador
para asegurarse de que los flags SameSite sean compatibles.
Single Sign-on
Si tiene una configuración de single sign-on con Clarive entonces algunas de las opciones de configuración de cookies podrían interferir con su esquema de single sign-on, así que asegúrese de probarlo antes de cambiar cualquier valor en sistemas Clarive de producción.
Duración de la sesión y "Recuérdame"¶
Clarive permite tanto cookies de sesión como cookies de expiración que mantienen el ID de sesión actual para un usuario en el navegador.
Las cookies de expiración son cookies que expirarán después del tiempo establecido por el
administrador en el archivo de configuración, bajo la entrada session_expires o
la configuración general Baseliner/Plugin::Session/expires.
session_expires: 2592000 # segundos = un mes
Las cookies de sesión son cookies que son eliminadas por el navegador cuando el usuario cierra sesión. A partir de la versión 7.10.5 de Clarive esa es la cookie predeterminada que Clarive creará, a menos que el usuario marque la casilla "Recuérdame" en el formulario de inicio de sesión.
Los usuarios pueden decidir al iniciar sesión si prefieren una cookie de sesión (marcando la casilla "Recuérdame") o una cookie con la expiración global establecida por el administrador.
El administrador puede limitar las opciones del usuario durante el inicio de sesión estableciendo la
opción de configuración session_duration_mode.
session_token: session_cookie- solo se permiten cookies de sesión (que son eliminadas por el navegador)session_token: expire_cookie- solo se permiten cookies de expiraciónsession_token: cookie(predeterminado) - el usuario puede usar la casilla "Recuérdame" para establecer su modo de expiración de cookie preferido.
Establezca el valor de expiración independientemente
Independientemente de los modos de token de sesión, establezca session_expires a un
valor entero positivo que sea mayor que 0 (>0). Si se establece en cero,
los usuarios que inicien sesión cerrarán sesión inmediatamente. Si no se establece ningún valor,
se usará el valor predeterminado interno de 1 mes.
Limitar sesiones de usuario a 1 por usuario¶
Limitar una sesión de usuario significa que un único ID de usuario no puede ser usado simultáneamente en diferentes navegadores o sesiones de navegador.
A partir de Clarive 7.6.1.4, Clarive puede limitar las sesiones de usuario a 1
por usuario por dirección IP. Esto significa que un usuario puede iniciar sesión en Clarive desde muchas
sesiones de navegador desde la misma dirección IP, que típicamente corresponde a una
única computadora (pero puede variar si los usuarios comparten un proxy o una conexión VPN).
# multiple es el modo predeterminado: user_session_mode: multiple # permitido: 'multiple', 'ip' o 'unique'
Para limitar las sesiones de usuario a 1 por usuario en lugar de 1 por IP, agregue la
siguiente línea a su archivo [config].yml:
user_session_mode: unique
Este modo es muy restrictivo y hará que los usuarios tengan que volver a iniciar sesión muy a menudo.
Una sesión por dirección IP¶
El modo de sesión ip limita las sesiones de usuarios por dirección IP. Esto significa que un usuario
puede iniciar sesión muchas veces desde una sola IP, pero si abren sesiones de Clarive desde
diferentes direcciones IP (ej., otra computadora o red) Clarive requerirá
que el usuario vuelva a iniciar sesión.
user_session_mode: ip
Hay una limitación: Clarive no puede hacer coincidir direcciones IPv4 con IPv6, por lo que el usuario puede tener en realidad hasta dos sesiones, una desde una sola dirección IPv4 y otra desde una sola dirección IPv6. Esta es en realidad una situación rara, pero podría ser el caso para ciertas configuraciones de software, SO o red/router.
Sesiones ilimitadas¶
Para levantar el límite de sesión para todos los usuarios, volviendo al comportamiento predeterminado
antes de Clarive 7.6.1.4:
user_session_mode: multiple
Esto permite que un usuario tenga sesiones ilimitadas abiertas desde muchas ubicaciones, IPs o navegadores.