Czy podczas tworzenia konta lepiej jest automatycznie wygenerować hasło i wysłać je do użytkownika, czy też pozwolić mu na utworzenie własnego hasła?

11

To pytanie pojawiło się dzisiaj podczas dyskusji z kolegą na temat strony „Utwórz konto” dla witryny, nad którą pracujemy.

Mój kolega uważa, że ​​rejestracja powinna przebiegać tak szybko i bezproblemowo, jak to możliwe, dlatego powinniśmy po prostu poprosić użytkownika o jego e-mail i zająć się resztą.

Zgadzam się z tym zamiarem, ale mam kilka obaw:

  • Ponieważ wygenerować hasło, my mają obowiązek upewnić się, że hasło jest wystarczająco silne
  • Z mojego doświadczenia wynika, że ​​w konfrontacji z niezrozumiałym hasłem użytkownicy mogą zapisać go na postie
  • Użytkownicy, którzy nie zapisują hasła, prawdopodobnie go zapomną. Co oznacza, że ​​będą musieli regularnie prosić o nowe hasło, co nie jest zabawne dla nikogo

Jednak biorąc pod uwagę ogólną jakość haseł tworzonych przez użytkowników oraz fakt, że zbyt wiele osób używa tego samego hasła do wszystkiego („wzdryga się”), widzę, jak rozsądne byłoby wygenerowanie dla nich silnego hasła.

Nadal czuję się rozdarty. Pracujemy nad witryną handlowca, w której użytkownik ma możliwość zapisania danych swojej karty kredytowej, więc oczywiście bardzo ważne jest, abyśmy stosowali najbardziej bezpieczne podejście.

Dryr
źródło
3
Przypuszczam, że ktoś musi odwoływać się do tego: xkcd: Password Strength
candied_orange
@CandledOrange Obligatory XKCD odniesienia
Dryr
11
Jako konsument korzystam z Twojej witryny i generujesz dla mnie hasło, kiedy usuwam moje konto.
Eric King,
4
Może to pytanie jest bardziej odpowiednie dla User Experience SE . Istnieje już podobne pytanie z ciekawymi odpowiedziami, a także: byś pozbyć polu hasła w formularzu rejestracyjnym .
inserttusernamehere
19
Wiadomości e-mail nie są bezpiecznym kanałem komunikacji. Nie wysyłaj haseł pocztą e-mail. Tokeny ważne tylko przez krótki czas (np. 24 godziny) mogą być w porządku. Nie możesz uniknąć haseł, ale możesz zachęcać do korzystania z menedżerów haseł: dedykowane oprogramowanie, funkcje przeglądarki „zapamiętaj moje hasło” i fizyczne notebooki to legalne strategie. Podanie hasła nie zachęca do dobrych nawyków bezpieczeństwa. Dodatkowo zaimplementuj opcje logowania, takie jak „zaloguj się za pomocą Google”, gdzie nie przechowujesz haseł. Użyj zewnętrznych procesorów płatności, aby nie musieć ufać Twojej witrynie danymi dotyczącymi płatności.
amon

Odpowiedzi:

11

Zaletą tego podejścia jest to, że w ten sposób użytkownik zapewnił prawidłowe konto e-mail, które kontroluje.

Jednak kanał e-mail jest notorycznie niepewny. Oznacza to, że hasło może zostać przechwycone. Podejście to należy wziąć pod uwagę tylko wtedy, gdy wygenerowane hasło zostanie użyte tylko raz, przy pierwszym logowaniu i jeśli zapewnione jest, że użytkownik musi je zmienić.

Bezpośrednie podejście jest bezpieczniejsze w tym sensie, że połączenie tls / ssl z twoją witryną jest znacznie trudniejsze do przechwycenia bez zauważenia.

Christophe
źródło
2
Zazwyczaj oba podejścia są stosowane razem: wprowadź adres e-mail i hasło, a następnie otrzymaj wiadomość e-mail zawierającą link aktywacyjny.
mouviciel
@mouviciel yes, en effet. To dwustopniowe podejście z hasłem i łączem wydaje się być najczęściej stosowanym podejściem, a na pewno nie bez powodu :-) Jest bezpieczniejsze, ponieważ ogólnie link aktywacyjny służy tylko do aktywacji, a nie do logowania. W przypadku PO wymagałoby to opracowania logiki wysyłania linku aktywacyjnego i śledzenia aktywacji na koncie.
Christophe