J'ai une application développée à l'aide de Réagir dans le front-end et ASP.Net l'API Web dans le backend. Je suis à l'aide de JWT pour l'autorisation. Le processus est
- Lorsqu'un utilisateur se connecte et est authentifié, 2 jetons sont envoyés au front-end, le jeton d'accès et d'actualisation de jeton. Un jeton d'accès est le JWT et rafraîchit jeton est une chaîne de caractères aléatoires et un jeton d'actualisation est stocké dans une base de données.
- Pour chaque appel à l'Api de jeton d'accès est fixé dans la tête, j'ai un filtre d'authentification qui valide le jeton d'accès.
- Une fois le jeton d'accès est expiré, un état 401 est levée avec le message d'erreur TokenExpired.
- Une fois la face avant reçoit 401, il appelle l'actualisation jeton API pour obtenir le jeton d'actualisation
La question que j'ai, c'est que je ne peut pas avoir un filtre d'authentification pour valider le jeton d'accès de l'actualisation des jetons API qu'il va jeter 401 en raison de l'expiration de jeton d'accès, donc j'ai besoin de faire du rafraîchissement jeton API d'être anonymes, de sorte qu'il ne touche pas de filtre d'authentification. Si je fais anonyme, je fais un appel à la base de données pour obtenir le jeton d'actualisation stockées pour l'utilisateur et de le comparer avec celui que j'ai reçu depuis le front-end. Ainsi en est-il sûr de faire le jeton d'actualisation de l'API anonyme, si ce n'est quelle est la meilleure façon?