Per favore considera uno scenario in cui un utente si iscrive a un'applicazione web con la sua email e password . Dopo la registrazione, all'utente viene inviata una email di conferma che richiede un accesso / sessione per confermare l'indirizzo email. Per resettare la sua password, l'utente deve confermare una mail di reimpostazione della password che viene inviata al suo indirizzo email memorizzato.
Questo non deve essere confuso con questa domanda simile in quanto l'altra domanda riguarda un accesso temporaneo all'account che non è qui indicato: Dovresti essere in grado di reimpostare una password senza prima verificare l'indirizzo e-mail? In altre parole: La mia domanda non riguarda la modifica di un indirizzo email, ma la procedura di iscrizione iniziale.
C'è qualche problema di sicurezza se l'utente è in grado di resettare la sua password se il suo indirizzo email non è stato ancora confermato?
Lo scenario n. 1 Alice oscura il suo indirizzo email
- Per sbaglio, l'e-mail di conferma viene inviata a Eve.
- Eve riceve la richiesta di conferma ma non è in grado di confermare il suo indirizzo email.
- Tuttavia, Eve è in grado di reimpostare la sua password.
- Infine Eve è in grado di confermare il suo indirizzo email e ottenere il pieno controllo dell'account di Alice.
Risultato: il requisito di accesso / sessione per la conferma dell'email viene ignorato. Quindi, penso che questa sia una cattiva idea. Tuttavia, se la reimpostazione della password non è disponibile senza un indirizzo email verificato, potrebbe verificarsi quanto segue:
Scenario n. 2 Alice dimentica la sua password e non ha ancora confermato il suo indirizzo email
- Alice si registra con il suo indirizzo email e la sua password.
- Alice perde la sessione e dimentica la sua password.
- Alice non è in grado di accedere (password errata) e non è in grado di verificare la sua email (login / sessione richiesti). Né è in grado di reimpostare la sua password (email non verificata).
- Alice ha perso il controllo del suo account (per sempre).
Quindi, come puoi vedere, lo scenario n. 1 produce un rischio più o meno cattivo (probabilmente non troppo male se non vengono raccolte altre informazioni al momento della registrazione). Tuttavia, lo scenario 2 offre una buona ragione per accettare tale rischio e abilitare il ripristino senza un indirizzo email confermato. Il rischio può essere accettato o mi manca qualcosa?