Buscar en la documentación

Sesión: vencimiento, inactividad y sin conexión

Qué pasa al abrir o recargar Trazo y en cada petición, cuando la sesión vence, se queda sin uso, desactivan la cuenta o el servidor no responde.

Módulo auth2 min de lecturaVer en GitHub

Cada vez que se abre o se recarga Trazo, el navegador comprueba la sesión con la API antes de mostrar una pantalla. Solo la API puede decir que la sesión terminó. Una falla de red, un 502/504 del gateway o el modo mantenimiento no cierran la sesión: llevan a una pantalla de espera con “Reintentar”.

Diagrama4 carriles · 9 pasos · 2 salidas de error
SíNoSíNoSíNoAbre o recarga unapágina de Trazo1¿Hay un tokenguardado?2Va a /ingresar con?volver=3Pide GET /auth/me4¿Respondió laAPI?5/sin-conexion conReintentar¿Tokenvigente, usadohace menos de1 h y cuentaactiva?6Responde 401UNAUTHENTICATEDBorra el token y vaal login con aviso7Anota el uso deltoken8Muestra la pantallapedida9
Los números coinciden con el paso a paso. En pantallas pequeñas el diagrama se desliza de lado.

Paso a paso

  1. PersonaAbre o recarga una página de Trazo
  2. Navegador¿Hay un token guardado?

    El token de la sesión vive en memoria y en sessionStorage (se borra al cerrar la pestaña). El de un ingreso a medias nunca se guarda.

  3. NavegadorVa a /ingresar con ?volver=
  4. NavegadorPide GET /auth/me
  5. Navegador¿Respondió la API?

    Sin red, con 502 o 504 sin cuerpo de la API (SERVER_UNREACHABLE) o en mantenimiento (503), la sesión se conserva.

  6. API¿Token vigente, usado hace menos de 1 h y cuenta activa?

    Vence a las 8 h (SESSION_MAX_MINUTES) y se cierra tras 1 h sin uso (SESSION_IDLE_MINUTES) o si la cuenta está desactivada. Un token a medias solo pasa en las rutas del segundo paso.

  7. NavegadorBorra el token y va al login con aviso

    El cliente HTTP solo cierra la sesión ante el código UNAUTHENTICATED, no ante cualquier 401 (un código MFA incorrecto también es 401 y no debe sacar a nadie). Guarda la página actual en ?volver=.

  8. Base de datosAnota el uso del token

    Sanctum actualiza last_used_at; de ahí se mide la hora sin uso. Cada día se borran los tokens vencidos hace más de 24 h.

  9. NavegadorMuestra la pantalla pedida

    Con el menú y los botones según los permisos que trae /auth/me.

La misma comprobación del token ocurre en cada petición mientras la persona usa Trazo: si una respuesta llega con UNAUTHENTICATED, el navegador hace lo del paso 7. Además, por el canal personal de tiempo real, una desactivación o un cierre de sesiones desde otro lugar llega al instante: la pantalla se cierra con aviso sin esperar a la siguiente petición (ver Módulo Auth y Tiempo real).

Qué ve la persona

CódigoHTTPCuándoMensaje en pantalla
UNAUTHENTICATED401La sesión venció, quedó sin uso 1 h, la cerraron o desactivaron la cuentaTu sesión terminó. Inicia sesión de nuevo para continuar.
NETWORK_ERROR—El navegador no pudo conectarseNo pudimos conectarnos. Revisa tu conexión a internet y vuelve a intentarlo.
SERVER_UNREACHABLE502 / 504Respondió el gateway, no la APIEl servidor de Trazo no está respondiendo en este momento. Vuelve a intentarlo en unos minutos; si sigue igual, avisa a soporte.
SERVICE_UNAVAILABLE503Trazo está en mantenimientoTrazo está en mantenimiento. Vuelve a intentarlo en unos minutos.

En la pantalla sin conexión se lee además “Tu sesión sigue abierta: al reintentar vuelves a donde estabas.”

Dónde está en el código