2.2.5 Reautenticación
Criterio de éxito oficial
Cuando expira una sesión autenticada, el usuario puede continuar la actividad sin pérdida de datos después de volver a autenticarse.
Relación con 2.2.1
El criterio 2.2.1 (Nivel A) aborda cómo gestionar los límites de tiempo: permitir ajustarlos o desactivarlos. El criterio 2.2.5 (Nivel AAA) aborda qué ocurre cuando la sesión expira a pesar de todo: el usuario no debe perder los datos que había introducido.
¿Qué es?
Cuando una sesión de usuario expira (por seguridad o inactividad), algunos sistemas borran todos los datos del formulario y exigen que el usuario vuelva a empezar desde cero. Este criterio garantiza que, si la sesión expira mientras el usuario completa una tarea, al volver a autenticarse puede continuar exactamente donde se quedó.
Flujo de reautenticación correcta
No aplica a
Actividades públicas sin autenticación, o acciones donde la pérdida de datos no perjudica al usuario (como la pérdida de resultados de una búsqueda sencilla).
¿Por qué es importante?
Reautenticación sin preservación vs. con preservación de datos
¿Quién se ve afectado?
Personas con baja visión: Rellenar formularios con lector de pantalla o ampliador requiere mucho más tiempo, lo que aumenta la probabilidad de que la sesión expire.
Personas con discapacidades cognitivas: Pueden necesitar pausas frecuentes mientras completan formularios complejos. Una expiración sin preservación de datos puede resultar devastadora.
Personas con problemas de movilidad: La entrada de texto mediante switch access, eye tracking u otros dispositivos adaptados es muy lenta. Perder el progreso es especialmente costoso.
Personas que necesitan descansos: Fatiga, dolor crónico, condiciones médicas o simplemente necesitar ayuda de otra persona pueden obligar a pausar a mitad de una tarea.
Cómo implementar 2.2.5
Métodos de preservación de datos
Guardado en servidor
Los datos del formulario se guardan en el servidor vinculados a la sesión. Al reautenticarse, se recuperan y se vuelven a mostrar en el formulario.
Recomendado para formularios sensiblesPaso por página de login
El sistema pasa los datos del formulario (cifrados o temporalmente) a través del flujo de login y los restaura al completar la autenticación.
Útil para flujos de checkoutFormularios que requieren atención especial
Presta especial atención a formularios de solicitud de empleo, declaraciones fiscales, solicitudes de prestaciones, formularios médicos, procesos de compra y cualquier tarea que requiera recopilar datos extensos del usuario.
Ejemplos prácticos
Correcto Solicitud de empleo con borrador
Un portal de empleo guarda automáticamente el formulario de solicitud como borrador cada minuto. Si la sesión expira, al volver a iniciar sesión el candidato encuentra el formulario exactamente como lo dejó.
Correcto Checkout con sesión expirada
Un e-commerce guarda el carrito y los datos de envío introducidos en la página de checkout. Si la sesión expira, al hacer login el usuario regresa a la misma página con todos los datos intactos.
Fallo Formulario de impuestos que borra al expirar
Un servicio de declaración fiscal en línea expira la sesión tras 30 minutos de inactividad y borra todos los datos introducidos. El usuario debe volver a empezar desde cero, lo que supone una barrera insalvable para algunos.
Técnicas recomendadas
| Código | Técnica | Tipo |
|---|---|---|
| G105 | Guardar los datos enviados para que estén disponibles para el usuario después de una reautenticación | Suficiente |
| G181 | Codificar los datos del usuario como parámetros de formulario ocultos o cifrados al hacer preguntas de autenticación | Suficiente |