risposta-alla-domanda-sullo-sviluppo-web-bd.com

Come gestire la "password dimenticata" quando l'utente non ha confermato l'e-mail?

Se segui lo schema di consentire agli utenti l'accesso alla tua applicazione senza aver confermato un'email (generalmente considerata una buona UX), come gestire il caso in cui hanno dimenticato la password? Molto importante in questo caso particolare poiché il sito include informazioni sulla salute personale.

Chiaramente, inviare loro un'e-mail con le istruzioni per reimpostarla non è appropriato, poiché la loro e-mail non è ancora stata verificata. Ho trovato quattro soluzioni, ma come nessuna di esse.

  1. Blocca un utente dopo, diciamo, 1 settimana se non ha confermato la sua e-mail. Quindi, durante questo periodo di tolleranza di una settimana, non possono recuperare la loro e-mail. (Un po 'problematico perché è un problema di sicurezza rivelare se un indirizzo e-mail è stato registrato durante la password dimenticata, quindi non saremmo in grado di comunicare effettivamente che la reimpostazione della password non è disponibile per loro sulla base della non conferma).

  2. Aggiungi "domanda di sicurezza" all'iscrizione. Male per ragioni abbastanza ovvie.

  3. Basta non lasciarli usare il sito senza confermare la loro e-mail. Anche male.

  4. Consenti loro di recuperare la password anche senza un'email confermata, ma aggiungi del testo nel sito "se non hai confermato l'e-mail, qualcuno potrebbe accedere alle tue informazioni sanitarie private". Ciò verrebbe mostrato in un banner nella parte superiore dello schermo fino a quando non si registrano e avrebbe la possibilità di inviare nuovamente l'e-mail a qualsiasi indirizzo e-mail scelto. Questo potrebbe essere il peggior caso di sicurezza di tutti.

Qualche idea?

24
cminu

Non chiedere una password finché l'indirizzo e-mail non è stato confermato.

Problema andato!

Utilizzare il processo di coinvolgimento graduale e iniziare chiedendo solo l'indirizzo e-mail.

Nel frattempo, invitali a navigare nel sito o a guidare alcune informazioni introduttive, ma non lasciare che facciano nulla di sicurezza fino a quando l'e-mail non è stata confermata.

Offri loro la possibilità di visualizzare o modificare l'indirizzo e-mail o di inviare nuovamente l'e-mail di conferma, se necessario (ad esempio, non viene visualizzato per qualche motivo).

Ecco il modulo di iscrizione da Gravatar

enter image description here

Modifica: Gravatar mi dice che il principale svantaggio di questo meccanismo è il recupero dell'account per le persone che hanno successivamente perso l'accesso a un indirizzo email e non si sono preoccupati di registra un altro indirizzo email che li aiuti a identificarsi.

14
Roger Attrill

Penso che potresti provare a inviare nuovamente l'e-mail di conferma in caso di password dimenticata. Pertanto, l'utente riceverà una nuova conferma nella vecchia e-mail (specificata nella fase di registrazione) e dopo la conferma sarà in grado di reimpostare la password utilizzando la procedura standard.

E puoi anche limitare la funzionalità in qualche modo (consenti agli utenti di leggere ma non lasciarli scrivere, ecc.) Fino alla conferma. Motiverà gli utenti a confermare rapidamente le loro e-mail e ad assicurarsi che le e-mail siano state inserite correttamente, ecc.

1
alexeypegov

Se il tuo sito ha altre funzionalità, consenti a un utente che ha effettuato l'accesso di accedere a tali funzionalità senza un'e-mail di conferma. Ma non appena vogliono collegarsi a informazioni riservate richiedono un'email confermata.

1
jackslash

La semplice risposta è che non dovresti consentire la reimpostazione della password (in alcun modo) se l'indirizzo e-mail non è stato confermato e ti preoccupi della sicurezza.

Le domande segrete sono solo un'altra versione molto meno sicura di una password e danneggiano enormemente la sicurezza.

L'unica vera opzione è di inviare nuovamente una conferma via e-mail. Tuttavia, non dovresti permettere a nessuno di accedere a un account a meno che l'e-mail non sia confermata. Se lo fai, non avrai questo problema in primo luogo.

1
JohnGB

Per quanto possa sembrare, 3 è l'unica opzione sensata, specialmente se sono coinvolte informazioni personali. Se l'utente non capisce l'importanza di questo, potrebbe copiare e incollare il suo record di salute sul suo account Facebook, quindi potresti voler tenerlo fuori, comunque ...

Ricevo la cassetta postale generale per il mio dominio registrato, ovvero la cassetta postale dove ogni posta va quando il nome della cassetta postale o un alias non esiste. Regolarmente, ricevo esattamente queste e-mail lì: ti sei registrato per il nostro servizio, per favore conferma. Sembrano principalmente gli stessi 2 o 3 utenti che vogliono registrarsi per alcuni siti di gioco utilizzando un indirizzo di posta falso, scegliendo il mio dominio per questo.

Certo che non confermo mai. Se stanno per fare qualcosa di illegale, il servizio avrebbe il mio indirizzo di posta confermato collegato al mio dominio. Se vogliono giocare lì, possono farlo con il proprio indirizzo. E questo è un altro motivo per non consentire all'utente di fare nulla: proteggere i proprietari di indirizzi di posta innocenti. Se non ottenessi il catchall, non lo saprei nemmeno.

Se fossi dannoso, potrei semplicemente provare a reimpostare la loro password, inserendo il loro account. Circa un decennio fa, avevo una mail in cui il servizio non richiedeva una conferma, ma invece inviavo il nome dell'account insieme alla password iniziale scelta dall'utente in testo semplice come conferma della registrazione ...

1
Secure

È più una domanda che ho in mente (contenente alcune risposte a tutte le altre risposte che parlano di sicurezza), che aggiungo all'elenco delle risposte ... e sto aggiungendo alla complessità della domanda già posta.

Ci sono molti modi in cui siamo recensiti qui ... ma ognuno ha un flusso, lascia che recensione:

  1. Non permetterò all'utente di eseguire la password dimenticata.
    • L'account con password dimenticata si perde nello spazio con tutto ciò che viene pubblicato
  2. Invio conferma email all'inizio (dopo la registrazione).
    • Il sistema potrebbe non inviare quell'e-mail
    • L'utente può ignorare il nostro sito Web per l'inizio e tornare quando l'e-mail viene persa
  3. Inviare la conferma e-mail all'inizio, ma rispedisco un'altra conferma se l'utente ha perso l'e-mail di conferma (che naturalmente i token hanno limiti di tempo e per impostazione predefinita scadono entro quel momento)
    • se l'utente (hacker) ha accesso all'indirizzo e-mail per reimpostare la password dimenticata, allora dovrebbe anche avere accesso per confermarla, perché preoccuparsene?
  4. Se si desidera consentire il completamento graduale del profilo?
    • È più come se stessi creando un social network e desideri vietare agli utenti vietati, o più casi simili, e alcuni casi speciali, altrimenti l'utente per lo più richiede subito l'accesso alle funzionalità principali, quando si registra.
  5. Domanda di Sicurezza?
    • Tutti dicono che è male ... non ho molto di un indizio logico, ma soprattutto le persone con cattive intenzioni sono vicine a te ...

E ... molti altri casi che potrebbero "colpire il muro" (fallisce), quindi, sia l'account di perdita dell'utente che in seguito, devono usare la posta elettronica secondaria, che non ricorderanno la prossima volta ... il cliente non è intelligente come noi) (lo sono ma non gli interessa provare o imparare), perché la loro e-mail principale è bloccata con un account dimenticato dalla password, oppure la sicurezza sarà bassa, o dobbiamo rimuovere l'account e ricreare dati interi o forzare l'utente a utilizzare la conferma e-mail (che può lasciare) su ogni login, prova o reimposta la password, e così via .....

Abbiamo così tante soluzioni che hanno i loro alti e bassi.

Quindi qual è la soluzione migliore? Commento per favore ...

Voglio conoscere anche le tue scelte

Aggiornare

A proposito, c'è un altro caso informativo da considerare ...

Se l'utente dimentica la password:

  1. L'utente conferma automaticamente che l'indirizzo di posta elettronica è il proprio indirizzo di posta elettronica quando richiede il "Reimposta collegamento password", poiché può attivare il collegamento di reimpostazione password solo tramite la sua e-mail e non otterrà la chiave altrimenti, e come ho detto prima se la posta o il server di posta sono compromessi, allora è finita per lui in entrambi i casi.
0
deadManN

Voglio solo verificare di aver compreso la situazione di cui ti preoccupi:

  1. Si sono registrati sul sito e hanno fornito un indirizzo e-mail.
  2. Il sistema ha inviato un'e-mail a questo indirizzo, chiedendo di fare clic su un collegamento.
  3. Non hanno fatto clic sul collegamento.
  4. Successivamente, vogliono accedere al sito ma hanno dimenticato la password.

Ora dici:

Chiaramente, inviare loro un'e-mail con le istruzioni per reimpostarla non è appropriato, poiché la loro e-mail non è ancora stata verificata.

Non sono così sicuro. O: 1. Hanno effettivamente inserito la loro e-mail in modo errato, e né l'e-mail di conferma, né la reimpostazione della password arriveranno alla persona corretta; o 2. L'hanno digitata nel modo giusto, e probabilmente l'e-mail di conferma l'ha fatta, e così anche l'e-mail di reimpostazione della password.

Sembra che tu sia preoccupato che il fatto che in precedenza non abbiano fatto clic sul pulsante di conferma sia in qualche modo un punto debole della sicurezza?

Nel caso 1, sono bloccati. Non ci hanno mai fornito alcuna informazione che ci consenta di verificarli. Se sono in gioco informazioni sulla salute personale, non credo che tu possa sacrificare la sicurezza per una "buona UX".

Nel caso 2, fornire un'opzione per inviare nuovamente l'e-mail di conferma. Forse chiedi loro di dirti di nuovo il loro indirizzo e-mail (se non è il loro login).

0
Steve Bennett