Лучше ли когда пользователь забывает свой пароль, чтобы иметь их reset их пароль или просто отправить потерянный пароль обратно им?
Лучше ли пароль reset или отправить потерянный пароль?
Ответ 1
Отправка потерянного пароля означает, что вы храните их в текстовом виде или зашифровываете в двухстороннем шифровании, что небезопасно.
Я предлагаю следующий механизм Wordpress для перепродажи пароля:
- Отправьте ссылку с подтверждением пароль reset
- Подтвердите ссылку на страницу подтверждения который генерирует случайный пароль и отправить его пользователю
- Позвольте пользователю войти в систему с новым паролем и изменить его на что-то лучше вспоминание.
Ответ 2
Вы не сможете отправить пароль в первую очередь. Ваш лучший шанс - создать случайный одноразовый пароль и отправить его на зарегистрированный пользователем адрес электронной почты.
Вы можете развернуть вопросы безопасности (например, "имя вашей первой собаки" ) и другую мистику, но я считаю, что пользователи, как правило, забывают ответы на них даже больше, чем их пароли, возвращая вас к квадрату.
Ответ 3
Многие пользователи используют один и тот же пароль на многих веб-сайтах. Чтобы уважать конфиденциальность людей, рекомендуется всегда хранить пароли в одностороннем порядке с помощью хеш-функций, таких как SHA-256 или MD5. Но вы не должны использовать их без дополнительной соли, поскольку словарные атаки могут быть просто выполнены на этих паролях. Учет конфиденциальности пользователей - основа надежных отношений между вами и вашими клиентами.
Я также рекомендую механизм сброса пароля, упомянутый Eimantes. Подтверждение электронной почты является основной задачей в этом процессе. Всегда позволяйте пользователю подтвердить свой пароль reset запрос, чтобы избежать поддельных запросов привести к недоступной учетной записи.
Вместо вычисления случайного пароля вы можете перенаправить пользователя на страницу, где он может ввести новый пароль.
Также имейте в виду, что отправка паролей через http без ssl очень небезопасна, особенно в общедоступных сетях, таких как wlan hotspots. Взгляните на методы аутентификации сообщений, такие как HMAC в сочетании с Diffie-Hellman-Key-Exchange. Или, по крайней мере, используйте дополнительную функцию хеша + соль во время входа в систему.
Ответ 4
Безопаснее reset пароль, так как третья сторона может перехватить почтовый пароль.
Изменить: по reset, я предполагаю, что вы имеете в виду общий шаблон отправки пользователю токена, который позволяет пользователю определять новый пароль. Очевидно, что если вы просто создаете новый пароль и отправляете его по почте, это не так безопасно, как просто отправка исходного пароля. Конечно же, токен можно использовать только один раз, иначе он будет так же хорош, как и пароль.
Только риск состоит в том, что третья сторона перехватывает токен и изменяет пароль до того, как пользователь сделает это. Это более низкий риск, чем отправка пароля, поскольку перехваченный пароль будет полезен, пока пароль используется, а токен будет полезен только один раз, и вы обнаружите, что кто-то использовал токен.
Обратите внимание, что самый высокий риск - это, вероятно, люди, которые не подслушивают почтовый трафик, а скорее кто-то, просматривающий вашу почту позже или взломанный в вашу учетную запись электронной почты, поэтому очень важно иметь все еще действующие пароли в вашем почтовом ящике.