Principio: le misure di sicurezza "eccessive" consentono agli utenti di cercare modi per aggirare la sicurezza, vanificando così lo scopo.
Dalla mia esperienza nell'implementazione di sistemi simili - e della logica che abbiamo usato per progettarli:
- L'idea dell'autenticazione federata consiste nel "dipendere" dal provider di identità per eseguire il lavoro di base per determinate proprietà dell'identità, in modo da non doverlo fare. Se si utilizza Google / FB / LinkedIn o accessi social media simili, questa è una premessa di base.
La chiave qui è che ci si assicura che i processi del provider di identità stiano effettivamente verificando la proprietà (attributo) che stanno affermando.
Quindi in generale (ad esempio, a meno che il modello della minaccia non indichi un'eccezione) - non è necessario verificare ulteriormente un indirizzo email (che è tra gli attributi di identità più basilari).
** Hai menzionato "ipotizzando che l'account social non fosse il loro": per la maggior parte delle applicazioni, direi che non si tratta di uno scenario di minacce di cui il progettista dell'app deve occuparsi.
Tutto sommato, chiedendo che l'e-mail venga verificata di nuovo dopo che un'autorizzazione federata appare un po 'eccessiva per precauzione, la causa della sicurezza non è solo d'aiuto.
- Esistono diversi flussi di ripristino della password consigliati
- un notevole che ricordo è di Troy Hunt - qui: link
- il mio preferito è di Jim Manico (OWASP / Manicode.net); l'ultimo bit di questo documento (il flusso di lavoro dimenticato password) dovrebbe aiutare: link
Sebbene non sia esplicitamente indicato in uno dei due precedenti, la necessità di reimpostare la password tramite un'e-mail registrata non aumenta la necessità di ulteriori verifiche al passaggio 1.
Riepilogo: a meno che la tua app non abbia una minaccia specifica, le email dal flusso di autenticazione del provider di identità reputato dovrebbero essere sufficienti senza ulteriori verifiche.