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

Ha senso autenticare un utente quando fornisce le credenziali valide esistenti durante la registrazione?

Qualcuno ha escogitato questo comportamento proposto di recente e non sono stato in grado di trovare esempi di servizi che funzionano allo stesso modo. Devo dire che non mi piace molto, ma non posso mettere il dito su un motivo preciso.

Funzionerebbe così. Abbiamo un utente in dB con:

L'utente passa a example.com/sign_up e si iscrive con:

  • Email: "[email protected]"
  • Password: "12345678" (potremmo chiedere una conferma della password)

Quello che stiamo facendo ora in questo caso è far sapere all'utente che c'è un conflitto; c'è un account con quella stessa email.

Ma dal momento che l'utente ha inserito credenziali valide, avrebbe senso autenticarlo?

Modifica: non credo che la mia domanda riguardi la stessa situazione discussa qui . Questi non sono due utenti diversi con la stessa e-mail, è un solo utente che si registra con le stesse credenziali (sia e-mail che password) ha usato una volta prima. Quello che di solito vediamo in questo caso è un tentativo di registrazione fallito. Il comportamento proposto qui è quello di verificare le credenziali rispetto all'autenticazione e, se funzionano, accedere semplicemente l'utente.

Come ho detto prima, non l'ho mai visto fatto e non mi piace da solo. Alcune delle risposte stanno dando un'idea molto valida del perché sembra essere una cattiva idea.

54
raul2010

Quindi, fondamentalmente, vuoi che qualcuno che si registra per un nuovo account e inserisca credenziali già esistenti, acceda come proprietario di queste credenziali?

Non consiglierei questo:

  1. La possibilità che la persona che si iscrive non sia il proprietario dell'account esistente potrebbe essere piccola, è ancora possibile.
  2. La differenza tra l'iscrizione e l'accesso dovrebbe essere chiara.
  3. Un utente potrebbe dimenticare che ha già un account. Informare che esiste già un account con quell'indirizzo e-mail è meglio del semplice accesso, il che sarebbe un comportamento inaspettato e davvero confuso.
51
jazZRo

Sì, accedi l'utente

Esistono diversi modi in cui un utente esistente potrebbe finire su una pagina di registrazione:

  • Clic dell'utente registrati per errore
  • L'utente ha recentemente registrato un account e il completamento automatico dell'URL del browser riporta l'utente a quell'URL (più recente)
  • L'utente ha dimenticato di essersi registrato in precedenza e sta tentando di registrarsi di nuovo (e, come molti utenti, usa sconsideratamente la stessa password su tutti i siti)
  • La pagina di destinazione del sito contiene un modulo di iscrizione e l'utente inizia a compilare il modulo (o il completamento automatico delle credenziali del browser compila il modulo)

    • ad es. la pagina di destinazione predefinita per github.com ha un modulo di iscrizione e gli utenti esistenti che inseriscono la loro e-mail e password possono accedere tramite il modulo di iscrizione:

      github homme page

Supponendo che, come la maggior parte dei siti, non si consentano più account con un'unica e-mail, l'utente ha fornito credenziali di accesso valide, quindi a meno che non vi sia un motivo non ux (ad esempio problemi di sicurezza), è consentito accedere all'utente.

Dal punto di vista del design, questo si chiama interpolazione dell'intento dell'utente ... stai facendo un'ipotesi informata su ciò che l'utente intende effettivamente fare con la UX (in questo caso, supponendo che l'obiettivo finale dell'utente è accedere al sito e l'accesso/iscrizione è solo un mezzo per raggiungere tale scopo).

Un esempio di interpolazione dell'intenzione dell'utente:

google search

42
tohster

NO.

È possibile che l'utente non abbia idea del proprio stato di registrazione sul sito. E inizia una nuova registrazione.

In tal caso, la soluzione migliore sarebbe OFFRIRE un modo per accedere mediante convalida in linea. Prima che l'utente raggiunga il campo della password, la convalida dovrebbe suggerire modi per accedere poiché l'e-mail è presente nel database. Ma, dal momento che non è SICURO, fornire collegamenti per accedere o recuperare la password.

Un'illustrazione:

enter image description here

35
pzv

Non sono d'accordo con le altre risposte e dico , potrebbe avere senso (con un paio di avvertenze).

Vi è una crescente prevalenza del modello combinato di accesso/iscrizione su alcuni siti, in cui l'intero modulo di iscrizione è semplicemente indirizzo e-mail e password e tutte le domande più sostanziali sul profilo diventano un passaggio facoltativo dopo la registrazione. Questo modello riduce drasticamente la barriera all'ingresso di un sito per i nuovi utenti.

Se si applica questo modello, penso che abbia senso semplicemente accedere all'utente se immette le proprie credenziali e fa clic sul pulsante sbagliato (a condizione che la password sia corretta). L'unico problema che posso vedere sorge quando la password non corrisponde , e quindi il tuo messaggio di errore dovrebbe essere adattato all'azione apparentemente richiesta dall'utente (che è "tale account non può essere registrato perché esiste già un account per il tuo indirizzo email" anziché "password non valida" se l'utente ha fatto clic su "Registra nuovo account" ma ha specificato una password diversa).

Tutto ciò sembra un processo piuttosto vantaggioso da cui sono seduto, aiutando l'utente a raggiungere facilmente il suo obiettivo (accedere alle funzionalità limitate del sito), ma è insolito e quindi probabilmente trarrai vantaggio dai test degli utenti su questa funzione.

Nel peggiore dei casi, potresti adottare un approccio ibrido: presentare la schermata di errore convenzionale ("Esiste già un account con il tuo indirizzo e-mail") ed estenderla con un link che dice qualcosa del tipo "Desideri accedere ora?"

30
Kit Grose

Non lo consiglierei. La schermata di registrazione dovrebbe informare il visitatore che una determinata email è già registrata. Quando lo informi l'utente, fa un passo indietro per ricordare quando e cosa ha fatto. Questo lo aiuta a entrare nel contesto dell'ultima visita a questo sito.

Il tuo sito Web dovrebbe essere conforme al modello mentale dell'utente. Non credo che tutti gli utenti apprezzeranno il sistema che intraprende questo passaggio proattivo per accedere automaticamente alla persona. Aiuta anche a creare un flusso di lavoro diverso, non intenzionale, che scoraggerei.

Inoltre, molti siti limitano i tentativi di accesso sulla loro pagina di accesso. Se consenti l'accesso tramite le pagine di iscrizione, inviteresti attacchi di forza bruta e dovresti mettere le restrizioni anche sulle pagine di iscrizione. Questo è eccessivo.

Puoi pensare di chiedere all'utente in una nota amichevole che questo indirizzo e-mail è registrato, vuoi invece effettuare il login? (Quindi portalo nella pagina di accesso) O questa e-mail è già registrata, hai dimenticato una password?

5
Sol

Assolutamente no

I tentativi di accesso si bloccano dopo alcuni tentativi (o meglio, altrimenti un utente malintenzionato potrebbe violare le prime 100 probabili password), almeno per alcuni minuti. Gli utenti sarebbero molto confusi, penso, se le schermate di registrazione si bloccassero dopo alcuni tentativi e non accedendo, si dà all'aggressore un indizio del fatto che la loro password era sbagliata, quindi possono provare quelle 100 migliori password e entrare nelle altre persone conti.

Il meglio che puoi fare è dire all'utente che il nome utente è già registrato. Questo dice a un utente malintenzionato più informazioni di quanto si vorrebbe, ma non c'è scelta. Per una buona esperienza utente, se potessi dire all'utente che non appena si sposteranno dal campo del nome utente (prima di digitare la password), sarebbe bello.

Suggerisco anche di inviare questa domanda agli esperti di sicurezza. Vuoi sempre capire quanta sicurezza stai cedendo per una migliore esperienza utente.

3
Guy Schalnat

Direi di no, non effettuare l'accesso nonostante tutte le credenziali siano identiche.

Anche se sembrerebbe logico effettuare il login perché tutte le credenziali sono identiche, come sopra menzionato causerà confusione.

Vorrei solo dire dare loro una notifica sul nome utente/e-mail è già in uso.

Se vuoi accedere all'utente, direi di lavorare con i cookie?

2
killstreet

n.

Indipendentemente dal fatto che potresti voler utilizzare qualcosa di diverso dall'indirizzo e-mail per identificare in modo univoco un utente (come un ID utente separato), nessun 2 utenti diversi possono avere lo stesso indirizzo e-mail. Periodo.

Se un utente si registra con un indirizzo e-mail già noto da te, potresti voler indirizzarlo alla funzionalità "password dimenticata" o fargli inserire un altro indirizzo e-mail.

C'è nessun buon caso d'uso nel consentire a 2 utenti di registrarsi con lo stesso indirizzo e-mail.

1
Bart Gijssens

No, perché hai appena raddoppiato la superficie di attacco.

Richiedi all'utente di inserire un identificatore. Verificare atomicamente se l'identificatore ha già credenziali. In tal caso, offre tre opzioni:

  1. Vai al modulo di login
  2. Vai al modulo delle credenziali dimenticate
  3. Reinvia un nuovo identificatore

Stesso effetto che hai proposto, ma la barriera di accesso rimane esattamente in un posto. Essere in un posto, c'è meno codice per controllare per la sicurezza.

1
bishop

No, non dovresti autenticare l'utente. Dovresti richiedere all'utente che esiste già un account con l'ID e-mail e puoi anche aiutare l'utente ad accedere alla sezione di accesso per accedere. Se lo desideri, puoi precompilare il campo ID e-mail, ma l'utente deve fornire nuovamente la password per verificare e inserire in modo specifico dalla sezione di accesso.

Inoltre, mi è sempre piaciuta l'idea che un modulo di iscrizione con solo due campi - e-mail e password. Mantieni almeno tre campi come nome o nome utente insieme a e-mail e password per renderlo più simile a un modulo di iscrizione. Ho visto poche aziende (alcune delle quali sono grandi), facendo questo, e mi sono imbattuto più volte lì. Quindi, se lo stai pianificando, dovresti riconsiderare.

0
UXPAPA

Sì e no.

Dovresti far sapere all'utente che l'email ha già un account associato. Dovrebbero quindi essere in grado di passare al login senza dover riscrivere nulla. The God Login Lo mostra bene, usando solo i campi e-mail e password pur avendo più pulsanti per le diverse azioni.

Nascondere il pulsante di iscrizione nella pagina di accesso è accettabile purché appaia se i dettagli degli utenti non sono già memorizzati, il che rende un'azione super semplice per poi iscriversi.

0
Daniel Wakefield