Actualmente estoy trabajando en el sitio web de un proyecto para mascotas y quiero implementar la función "Recordarme" para los inicios de sesión y quería saber si mi procedimiento es seguro. El proceso de autenticación básicamente es algo como esto:
- Si un usuario desea ser recordado e inicia sesión con éxito junto con la cookie de su sesión, obtiene una cookie recordatoria de larga duración.
- La cookie contiene algunos datos aleatorios (un UUID) y la identificación del usuario.
- El UUID y un hash con sal de la identificación del usuario se almacenan en una base de datos.
- Cuando el usuario debe volver a autenticarse desde una cookie de este tipo, la identificación del usuario de la cookie se verifica contra el hash de la base de datos correspondiente a esos datos aleatorios.
- Si coinciden, el usuario inicia sesión, el par de id / hash actual se elimina de la base de datos y el usuario obtiene uno nuevo para dar a los posibles ladrones de cookies una ventana más estrecha. para actuar
- Los pares de ID / hash con más de 3 semanas de antigüedad también caducan para prevenir aún más el robo de cookies.
Me gustaría una revisión de mi método. ¿Es esto seguro? Si es así, ¿podría implementarse de otra manera, quizás más simple,?