Tengo un escenario donde un usuario tiene un token de actualización. Cuando el token se está preparando para que caduque, el cliente envía el token de actualización al servidor de autenticación para obtener un nuevo token de actualización. Esto suele ocurrir en dispositivos móviles y, a veces, la respuesta no se recibe: la conexión se interrumpe o el navegador se cierra.
En este momento, el usuario aún tiene el token de actualización que está a punto de caducar.
Además, dado que el servidor de autenticación ha emitido un token nuevo, el servidor de autenticación le da al cliente 5 minutos para volver a intentarlo, y luego revoca el token antiguo si no ha escuchado nada.
Cuando el usuario abre su navegador de nuevo, descubre que se desconectó porque no recibió el token nuevo, y el token antiguo ha sido revocado.
Obviamente, para solucionar este problema, no pude revocar el token anterior ni darle más tiempo como 24 horas antes de que se revoque. ¿Hay algún riesgo de seguridad al hacer esto? Significa que hay dos tokens de actualización, pero supongo que si los tokens de actualización solo pueden usarse con el servidor de autenticación, entonces el servidor de autenticación podría revocar el otro si cualquiera de los dos se utiliza para intentar obtener un nuevo token de actualización. ¿Es eso normal?