OAuth2 non è intrinsecamente un rischio per la sicurezza per un utente finale, ad esempio la persona che autentica su un servizio di terze parti utilizzando il proprio account Google o Facebook (ad esempio).
OAuth2 funziona in ambiti , che definiscono la natura e la quantità di dati a cui il servizio di terze parti finirà per avere accesso.
Probabilmente avrai familiarità con questo tipo di schermo ( fonte ):
Un'implementazionediOAuth2benprogettataesprimeràchiaramentelevarieinformazionicheverrannodivulgatealservizioditerzeparti.
Tuttavia,ciòdipendeinrealtàdalladefinizioneaptdeglioscillatoridelproviderOAuth2.Noncisonoambitistandard,quindivarianodaprovideraprovider, come mostrato in questo scope-by-provider lista .
Quindi il "rischio esterno" risiede nella scelta del fornitore OAuth2. È possibile implementare OAuth2 in un modo totalmente insicuro e "aderire" alle specifiche OAuth2. Cosa succede se eseguo un servizio con un unico ambito per tutte le tue informazioni? Cosa accadrebbe se la mia descrizione di tale ambito nella pagina di consenso fosse fuorviante?
Più in generale, è spesso una critica alla specifica OAuth2 che lascia elementi critici per gli implementatori da recuperare da soli, portando a tutti i tipi di problemi. La pagina di wikipedia li sfiora brevemente (non esitare a scendere nella tana del coniglio ea leggere su di essa ).
Ma questo non rende OAuth2 intrinsecamente insicuro.
Affrontando l'attuale scandalo di Cambridge Analytica: Facebook, per tutto ciò che potrebbe essere tenuto contro di loro, gestisce un'implementazione rispettabile di OAuth2 e fornisce questo servizio da anni prima di questo evento. Le persone che hanno rinunciato alle loro informazioni nella debacle di Cambridge Analytica devono aver inizialmente fatto clic sulla schermata di consenso, che deve aver visualizzato un elemento sulla divulgazione della cerchia dei loro amici, utilizzando l'app di profilazione psicologica che ha finito per pescare ( not phi shing) per tutte queste informazioni. Sembra tuttavia che Facebook abbia almeno è stato "negligente" nel far rispettare la sua politica di utilizzo dei dati (prendi la tua idea).
Modifica: @Ian ha commentato che gli utenti dell'app di Cambridge Analytica potrebbero non aver fornito il consenso esplicito per i dati dei propri amici. Suppongo significhi che Facebook potrebbe non essere stato semplice nella descrizione del loro scopo.
Come per la tua ultima domanda, un provider OAuth2 non è in grado di dire più di quando e con quale frequenza il servizio di terze parti accede alle informazioni con ambito. Non può sapere cosa stai facendo con il servizio di terze parti, o per quello che il servizio sta facendo con le tue informazioni. È (giustamente) fuori dalle loro mani.
- Ulteriori informazioni su OAuth2: link