Buenas tardes, estamos probando la versión 2.8.3 de Guaraní 3W, tengo un par de consultas:
Estamos configurando el sesion_timeout y sesion_maxtime. Como seria el uso de estas variables? Cuando expira el timeout empieza a regir el maxtime?
Necesitaría que me aclaren bien el uso de estas variables ya que en la documentación técnica no detalla demasiado.
Detecte un comportamiento extraño: cuando estoy en el sistema logueado en una unidad académica, cierro la pestaña sin cerrar sesión, vuelvo a abrir una pestaña, pongo la URL del sistema y veo que aun sigo logueado.
No debería expirar la sesión al cerrar la pestaña? O como deberíamos configurar para que sea así?
El session_timeout es el tiempo que dura una sesión inactiva. Es decir, es el tiempo en que permanece abierta una sesión sin que el usuario logueado interactue con el sistema.
El session_maxtime es el tiempo máximo que una sesión puede estar abierta, sin importar si el usuario logueado interactua o no con el sistema. No depende de ninguna manera del session_timeout.
No es un comportamiento extraño, es lo mismo que pasa con casi todos los sistemas web mainstream (gmail, facebook, etc). La sesión se mantiene abierta hasta que el usuario presione el botón de logout, haya estado inactivo session_timeout segundos o la sesión estuvo abierta por más tiempo que session_maxtime.
Dado que HTTP es un protocolo sin estado no es posible diferenciar si el usuario cerró una pestaña o simplemente no está interactuando con el sistema. Se puede recurrir a algún hackeo del estilo: tratar de detectar el evento onClose de la ventana y enviar un pedido ajax que desloguee a la persona del sistema; pero esto no se hace ya que es propenso a errores y dependiente de la plataforma.
En general el público está acostumbrado a que el comportamiento sea el que propone 3W por defecto
Una consulta. Como se configura el tiempo maximo de sesion en guarani gestion? Actualmente es muy corto y nos da problemas en procesos largos como por ejemplo Verificar Regularidad de los Alumnos.
Una pregunta aparte sobre eso. Mientras se estaba haciendo dicho proceso en varias propuestas, se terminó la sesion y quedo congelado en 49% de progreso. Al ver el reporte de resultados anteriores nos sigue indicando que quedo en 49% sin permitirnos ver el detalle.
Que ocurre en esos casos? Es seguro intentar el proceso nuevamente cuando alarguemos el tiempo de sesion? O le estariamos quitando la regularidad dos veces a determinados alumnos (quitandole asi mas de una readmision automatica de manera injustificada). Tengo entendido que no deberia pasar nada, ya que si se readmitieron automaticamente dentro de ese 49%, dicha readmision tiene fecha de vencimiento de un año de duracion segun hemos configurado en la operacion, por lo que estarian protegidos segun entiendo.