Nella nostra applicazione web PHP abbiamo incluso l'autenticazione a due fattori. Gli utenti hanno generato una chiave segreta una tantum che poi inseriscono (o eseguono la scansione di un codice QR) nell'app Google Authenticator.
L'autenticazione è basata sul tempo, quindi un nuovo token viene generato dall'app Authenticator ogni 60 secondi e questo token deve essere inserito quando l'utente tenta di accedere alla nostra app.
Funziona perfettamente alla perfezione, tuttavia quando un nuovo utente viene aggiunto al nostro sistema, il loro token segreto (e il codice QR associato) viene inviato loro per email una prima volta.
Inoltre, proprio come abbiamo una funzione di "password dimenticata" per reimpostare la password di un utente via e-mail, stiamo pensando di avere l'opzione per re-email o reimpostare la chiave segreta di Authenticator di un utente (ad esempio, se il telefono di un utente viene distrutto e sostituito con uno nuovo, e hanno bisogno di impostare di nuovo l'app).
Tuttavia, non ho trovato esempi di vita reale di poter inviare o resettare via e-mail una chiave segreta di autenticazione a due fattori. È un peccato capitale comunicare queste informazioni via e-mail e dovrebbe essere fatto in un altro modo?
Oltre all'autenticazione Two-Factor abbiamo una serie di altre misure di sicurezza (password, accesso al sistema bloccato su indirizzo IP, avvisi quando nuovi / non riconosciuti browser web accedono al sistema, ecc.) se questo fa qualche differenza .