Лучший способ восстановить утерянный пароль - PullRequest
4 голосов
/ 04 декабря 2009

Каков наилучший способ сброса пароля пользователя при хешировании пароля:

  1. Сбросить пароль для произвольной строки и отправить эту строку на зарегистрированную почту?
  2. Создать уникальную хеш-ссылку для сброса пароля, действительного в течение часа, и отправки этой ссылки на почту?
  3. Любой другой метод?

Ответы [ 5 ]

6 голосов
/ 04 декабря 2009

Создать уникальную хеш-ссылку для сброса пароля, действительного в течение часа, и отправки этой ссылки на почту

Это метод, который я предпочитаю. Это позволяет вам сбросить пароль только в том случае, если пользователь заходит по ссылке. Таким образом, если кто-то злонамеренно пытается сбросить пароли, пользователь может просто удалить электронное письмо и остаться без изменений (не нужно вводить новый пароль).

Кроме того, вы должны указать ссылке сброса более длительный срок действия (например, от 12 до 24 часов).

4 голосов
/ 04 декабря 2009

2 - лучший метод. Никогда не отправляйте пароль в простой форме. Более того, не храните это в своей системе таким образом. Всегда хасите и солите.

Продолжение комментариев: отправка по электронной почте хэшей вместо простых паролей также может быть небезопасной, но вы преследуете другую цель через это Многие люди используют один и тот же пароль для всех сайтов, от Facebook до онлайн-банкинга. Определенный хеш может быть взломан, но не сам пароль, в этом суть.

1 голос
/ 04 декабря 2009

# 2 предпочтительнее, чем # 1, хотя бы потому, что отправка пароля в виде простого текста по электронной почте подвергает его ненужной необходимости.

Другие опции:

  • используйте вопросы с подсказками паролей
  • используйте OpenID и решите всю проблему с поставщиком OpenID пользователя.
0 голосов
/ 04 декабря 2009

На некоторых сайтах я нашел действительно интересный способ: они отправляют вам новый пароль через SMS. Это здорово, потому что электронная почта может быть взломана, но телефон ... Я не думаю, что ее легко взломать.

0 голосов
/ 04 декабря 2009

Это зависит от чувствительности информации, которую вы защищаете ...

Существует хороший баланс между безопасностью и удобством использования, и вам нужно решить, где он находится и какие активы вы защищаете.

То, что я обычно делал бы (предполагая, что финансовые данные задействованы), это вариант 2, минус 1 час.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...