Todas las lecciones Read in English

Seguridad a fondo · Unidad 20 · Lección 12 de 27

Sesiones: después de iniciar sesión

Sigue un acceso desde su creación hasta la renovación, revocación y cierre.

11 minlista

Para prepararteAplicaciones web

Después de esta lección puedes

  • distinguir autenticación y sesión
  • explicar qué protegen los atributos de una cookie
  • elegir cuándo renovar o revocar una sesión

Cambias la contraseña después de perder una computadora. La computadora ya tenía la sesión abierta. ¿Terminó su acceso? Depende de cómo el servicio gestione las sesiones.

sesión: Mecanismo que vincula solicitudes posteriores con una interacción o identidad ya establecida.

Autenticar → Usar una sesión limitada → Caducar o revocar1Autenticar2Usar una sesión limitada3Caducar o revocar
La autenticación inicia una sesión. El servicio debe controlar su duración y sus permisos.

Una sesión es un acuerdo que continúa

La autenticación comprueba pruebas sobre una identidad. La sesión permite que las solicitudes posteriores hagan referencia a ese evento. Un identificador opaco suele apuntar a información del servidor; un token firmado puede transportar afirmaciones que el servicio valida. Ambos diseños necesitan comprobar los permisos de cada acción.

Piensa en una llave de hotel: recepción registra tu entrada, pero la llave debería abrir solo tu habitación y dejar de funcionar al terminar tu estancia. Cambiar la contraseña de tu reserva no reprograma la llave.

Tres controles con funciones diferentes

Secure limita el envío de la cookie a un transporte seguro. HttpOnly evita que el JavaScript normal de la página la lea. SameSite restringe ciertos envíos entre sitios según el modo elegido y las reglas del navegador. Se complementan. HttpOnly no impide que una página comprometida haga solicitudes con la sesión, y SameSite no sustituye por sí solo una defensa adecuada frente a CSRF.

El ciclo de vida también cuenta

Renueva el identificador cuando cambien la autenticación o los privilegios. Distingue el tiempo de inactividad de la duración absoluta: una sesión activa no debería durar para siempre. Algunas acciones sensibles pueden requerir autenticación reciente.

Cerrar sesión debe invalidar el acceso correspondiente. Los tokens autocontenidos pueden necesitar revocación, duración breve o comprobaciones adicionales. Al restablecer una contraseña, define qué ocurre con las sesiones existentes. Registra los eventos sin guardar el secreto.

Convierte la comparación del hotel en un contrato verificable

Nuestro portal ficticio de voluntariado conserva una sesión de servidor por cada inicio de sesión en un navegador. Su política admite treinta minutos de inactividad y ocho horas de duración absoluta. Son supuestos didácticos, no límites recomendados para cualquier servicio. Cambiar el destino de un pago requiere autenticación en los cinco minutos anteriores y permiso para modificar ese destino.

Evento proporcionado Comportamiento exigido Evidencia que pedir
Inicio de sesión correcto Crear una sesión autenticada nueva No conservar el identificador previo sin autenticar como identificador autenticado
Una sesión activa cumple ocho horas Exigir autenticarse otra vez La actividad no prolonga el límite absoluto
Se revoca la sesión del navegador perdido Rechazar sus siguientes acciones protegidas Las sesiones conservadas intencionalmente siguen funcionando
Se cambia el destino del pago Exigir permiso y autenticación reciente Una sesión antigua no completa el cambio por sí sola

Autenticarse recientemente aporta evidencia de actualidad, no un rol nuevo. Una voluntaria que vuelve a autenticarse no obtiene funciones reservadas a contabilidad. A la inversa, el rol de contable no demuestra que la persona acaba de acreditar control de su autenticador. Son comprobaciones distintas y ambas deben corresponder a la acción solicitada.

Sigue el límite más allá del navegador

El navegador guarda un secreto de sesión y lo envía según sus reglas. La aplicación decide si lo acepta. La caducidad de la cookie ayuda a retirar la copia del navegador, pero el servicio debe aplicar sus propios límites de validez. Borrar una cookie no demuestra que todas las copias o credenciales relacionadas hayan dejado de funcionar.

Si existen tokens de acceso y de renovación, describe ambas duraciones. Un token de acceso permite acceder a los servicios previstos bajo afirmaciones validadas; otro de renovación puede obtener sustitutos. Impedir renovar ayuda, pero un token de acceso ya emitido puede seguir siendo aceptado hasta caducar si el servicio del recurso no aplica también la revocación. Una firma valida integridad y emisor según las reglas de verificación; no informa por sí sola de que alguien acaba de perder un dispositivo.

PrediceEl portal promete que revocar un dispositivo detiene inmediatamente sus acciones protegidas. El diseño revoca la renovación, pero acepta tokens de acceso durante diez minutos más. ¿Cumple la promesa?

No. Termina la renovación, pero queda un intervalo de aceptación. El equipo debe cambiar el diseño para cumplir o revisar expresamente el requisito tras valorar las consecuencias. Un intervalo breve puede ser una elección deliberada; describirlo como revocación inmediata seguiría siendo inexacto.

Pregunta qué permanece después de cada cierre

Cerrar este navegador, cerrar todas las sesiones, restablecer una contraseña y retirar a alguien de un proyecto necesitan definiciones separadas. La retirada puede anular un permiso y conservar otras actividades de la cuenta. Además, el proveedor de identidad puede mantener su propia sesión, distinta de la aplicación. Por eso hay que aclarar qué significa “sesión cerrada”.

Revisa creación, renovación, rechazo y revocación mediante registros ficticios con horas y referencias de correlación no secretas. No incluyas valores de sesión utilizables en registros ni capturas. Comprueba que una solicitud caducada o revocada no tenga efectos protegidos y que la persona disponga de una vía práctica para volver al trabajo permitido. Una pantalla de cierre correcta demuestra la interfaz, pero no la política de aceptación del servicio.

EXPLORA EL CONCEPTO

¿Qué acceso termina?

Cambia un detalle y observa qué sesión puede seguir existiendo.

Cerrar la pestaña

No invalida necesariamente la sesión del servidor. Las cookies persistentes y otros dispositivos pueden conservar acceso.

Revocar el dispositivo perdido

Puede invalidarse su sesión sin cerrar las demás. Comprueba qué revoca realmente el servicio.

Cambiar la contraseña

La contraseña cambia. El acceso de las sesiones existentes depende de la política de revocación.

Modelo simplificado para aprender. No se conecta a sistemas ni usa datos reales.

Llévalo a una decisión

Pregunta cómo nace la sesión, dónde se acepta, cuándo se renueva y cómo termina. La pantalla de acceso solo responde a la primera pregunta.

Términos que viste

sesión

Compruébate

Sin reloj ni penalizaciones. Lee cada explicación y vuelve a intentarlo cuando quieras.

  1. Una contable vuelve a autenticarse en el portal. ¿Qué comprobaciones siguen correspondiendo al cambio de destino de pago?

    Ver la respuesta

    Respuesta correcta: Autenticación reciente y permiso para cambiar ese destino. Actualidad y autorización fundamentan partes diferentes de la decisión.

  2. Una cookie de sesión tiene HttpOnly. ¿Qué conclusión está respaldada?

    Ver la respuesta

    Respuesta correcta: El JavaScript normal de la página no puede leer directamente su valor. Esa es su restricción principal, no protección completa contra usos indebidos de la sesión.

  3. Una voluntaria permanece activa ocho horas bajo esta política. ¿Qué debe suceder?

    Ver la respuesta

    Respuesta correcta: Exigir nueva autenticación al alcanzar el límite absoluto. La duración absoluta es independiente del reloj de inactividad.

  4. Termina un restablecimiento de contraseña. No hay evidencia sobre revocación de sesiones. ¿Qué puede concluirse?

    Ver la respuesta

    Respuesta correcta: Que cambió la contraseña; el estado de las sesiones anteriores no está establecido. Contraseñas y credenciales de sesión pueden tener ciclos distintos.

Pruébalo

  • EscribeDibuja una sesión ficticia con un inicio, un cambio sensible y un dispositivo perdido. Indica qué evento necesita renovación, autenticación reciente o revocación.
Referencias