Lo schema seguente per l'autenticazione e l'autorizzazione di Google OAuth2 è soddisfacente e sicuro?

0

Ho una tabella utenti nella mia applicazione SPA (applicazione Phoenix API) che contiene i campi: name , email , registered_at , role_id . Uso l'autenticazione OAuth2 dall'API di Google. Dopo che l'utente finale si autentica alla pagina di accesso di Google, la mia libreria OAuth2 ottiene il suo indirizzo e-mail dall'API del profilo di Google e io uso quell'indirizzo e-mail per contrassegnarlo nella mia domanda come autenticato (connesso) inviandogli un token di autenticazione firmato per future richieste autorizzate. La mia domanda è questo modello sicuro e protetto? Sarebbe possibile per un utente malintenzionato ottenere l'autorizzazione nella mia applicazione alterando la risposta di Google immettendo un indirizzo email personalizzato all'interno della risposta del profilo Google? È sicuro fare affidamento solo sull'indirizzo email ottenuto chiamando l'API di profilo di Google? È possibile adottare ulteriori misure di sicurezza?

    
posta W.M. 19.11.2017 - 10:21
fonte

1 risposta

1

Dovrebbe essere ok. Sembra che tu stia implementando OpenID che è costruito su OAuth.

Quando l'utente si autentica su Google, un token viene restituito alla tua applicazione tramite un reindirizzamento eseguito dal browser dell'utente. Questo potrebbe essere visualizzato o modificato dall'utente o da chiunque possa intercettare la richiesta, ad esempio un server proxy aziendale che esegue l'ispezione https.

Quando la tua applicazione riceve questo token, lo invia a Google che verifica che sia stato rilasciato per la tua applicazione e restituisce i dati utente a cui fai riferimento. Questo può essere intercettato solo se la tua connessione a Google è man-in-the-middled, qualcosa che è molto meno probabile.

    
risposta data 19.11.2017 - 10:59
fonte

Leggi altre domande sui tag