Quando si proteggono le API REST per le applicazioni mobili, ciò che si vede spesso è l'uso di token di aggiornamento. Esistono perché:
- I token di accesso hanno una data di scadenza.
- Non vogliamo che l'utente debba inserire le sue credenziali.
I token di aggiornamento sono token revocabili senza date di scadenza che possono essere utilizzate per recuperare un nuovo token di accesso quando quest'ultimo è scaduto. Vedi qui .
Su tutte le tue chiamate API, verrà inviato il token di accesso (valido). Quando è scaduto, usi la "chiave speciale" (il token di aggiornamento) per ottenere un altro token di accesso non scaduto.
In che modo questo modello ampiamente utilizzato è in ogni caso inferiore o diverso dall'emissione di un token di accesso non scaduto e dall'archiviazione nel dispositivo, nello stesso modo in cui avresti memorizzato il tuo token di aggiornamento?
PS: Se la tua risposta è che l'invio del token non in scadenza su ogni richiesta è meno sicuro (middle man), direi: è davvero quando la tua API è su HTTPS? Inoltre, fai invia un token senza scadenza sulla stessa rete, lo chiami semplicemente "token di aggiornamento" e invialo meno spesso).
PS2: se la tua risposta si riferisce alla possibilità di revocare i token di aggiornamento, suppongo che potrei sostenere che potremmo rendere anche revocabili i nostri token di accesso.