Ecco come faccio il mio token di aggiornamento JWT:
Un token controlla la validità ogni volta che viene effettuata una richiesta. Se non è scaduto, consenti l'accesso.
Se è scaduto, chiama un'altra funzione chiamata RefreshToken per assegnare un nuovo token all'utente.
Ok questo meccanismo è abbastanza buono tranne che ogni token scaduto (di quell'utente, a condizione che sia valido) può attivare la creazione di un nuovo token nuovo.
Ad esempio
La scadenza è di 15 minuti.
Il token A è stato creato.
Il token A richiede un nuovo token di aggiornamento dopo 1 ora.
Viene rilasciato un nuovo token, denominato Token B.
Dopo 15 minuti, il token B è scaduto.
Ora, il token A e il token B possono chiedere un nuovo token.
Non creerebbe la possibilità di emettere un token in modo esponenziale?
Solo da 1 gettone.
E il token può emettere un altro token e così via.
Un token scaduto 15 anni fa può rilasciare un nuovo token di aggiornamento oggi anche se è stato usato un po 'di tempo in 15 anni fa e aveva emesso un altro token.
Ora ogni token rilasciato può creare un altro token. Posso solo consentire il token A - > Token B - > Token E senza memorizzare il token scaduto nel database?
L'ordine dell'alfabeto token ha la precedenza