Sto lavorando su un'API usando Node ed Express, con un database Mongo. I miei utenti possono autenticarsi utilizzando un percorso e ricevono in cambio un JWT.
Voglio implementare un meccanismo di sicurezza per proteggere detti token. Vale a dire, voglio che i token si auto-revocano quando un utente cambia la sua password e fornisce un pulsante "Revoca tutte le app", che invalida i token creati da tutti .
Per fare ciò, ho aggiunto un nonce nel corpo del JWT, che è un UUID v4 casuale. Quando l'utente cambia la sua password o fa clic sul pulsante, viene generato un nuovo UUID, che causa una revoca di fatto di tutti i token, poiché il corpo del JWT non corrisponde a ciò che proviene dal database.
È un buon approccio? Non riesco a pensare a un modo in cui questo sarebbe rotto, c'è qualcosa che ho trascurato?