Tengo una aplicación desarrollada utilizando Reaccionar en el front-end y ASP.Net Web API en el backend. Estoy usando JWT para la autorización. El proceso es
- Cuando un usuario inicia la sesión y se ha autenticado, 2 tokens son enviados para el front-end, el token de acceso y actualización de la ficha. Un token de acceso es la JWT y refresca un token es una cadena aleatoria y un token de actualización se almacena en una base de datos.
- Para cada una de las subsiguientes llamada a la Api token de acceso se adjunta en el encabezado, tengo un filtro de autenticación que valida el token de acceso.
- Una vez que el token de acceso está caducado, un plan 401 de estado se produce con el mensaje de error TokenExpired.
- Una vez que el front-end recibe 401, llama el token de actualización de la API para obtener el token de actualización
La duda que tengo es que no puedo tener un filtro de autenticación para validar el token de acceso de la actualización de fichas de la API de como se va a tirar 401 debido a que el token de acceso caducado, por lo que necesito para hacer el token de actualización de la API de ser anónimos, a fin de no golpear el filtro de autenticación. Si puedo hacer anónimo estoy haciendo una llamada a la base de datos para obtener la actualización de token almacenado por el usuario y la compara con la que he recibido desde el front-end. Por lo tanto, es seguro hacer el token de actualización de la API en el anonimato, si no ¿cuál es la mejor manera?