Ho un'API che utilizza oAuth2 e le mie app mobili che utilizzano questa API come back-end. Poiché gli utenti possono accedere tramite più dispositivi (ad esempio iPhone, iPad, tablet Android o telefono Android) allo stesso tempo, ho bisogno dell'API per distinguere tra ciascuna connessione. Vorrei farlo tramite token di accesso separati: ogni client riceve un token di accesso separato.
Il problema è che l'attuale implementazione che utilizziamo (spring-security-oauth2) genera una chiave univoca basata su client_id, nome utente e ambito. Quindi, sostanzialmente, quando si ottiene un token di accesso, tutti i client ottengono lo stesso token di accesso per lo stesso utente. Questo viene fatto usando DefaultAuthenticationKeyGenerator.
È sicuro ignorare il generatore di chiavi di autenticazione e creare semplicemente un nuovo token di accesso su ogni richiesta da un client?