Método de autentificación
En mi back-end de Node.js (con Express.js), autentico a los usuarios usando JWT que se almacena en una cookie con el indicador HttpOnly . La cookie caduca en N horas. Un middleware verifica si JWT es válido y llama a la función next() o envía un estado 401 .
Comportamiento actual
Si la cookie caduca, el usuario debe iniciar sesión nuevamente, incluso si todavía estaba usando la aplicación.
Comportamiento deseado
Quiero que la cookie caduque en N horas, pero siempre que el usuario use la aplicación, se debe actualizar el tiempo de caducidad. El usuario debe iniciar sesión nuevamente solo si han pasado N horas desde la última vez que interactuó con la aplicación.
Pregunta
¿Debo enviar una nueva cookie con cada respuesta, incluso si lo único que cambia es el tiempo de vencimiento? ¿Se considera esto una buena práctica?
lo que necesitas se llama token de actualización
Puede encontrar más detalles sobre los tokens de actualización en:
https://www.rfc-editor.org/rfc/rfc6749#section-1.5 y https://developer.okta.com/docs/guides/refresh-tokens/main/