Сброс паролей без электронной почты пользователя - PullRequest
4 голосов
/ 16 апреля 2010

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

Проблема в том, что мы не хотим запускать почтовый сервер только для сброса пароля. Есть ли другой способ сброса пароля без отправки почты пользователю?

РЕДАКТИРОВАТЬ: Это для пользователей, которые забыли свои пароли.

Ответы [ 7 ]

3 голосов
/ 16 апреля 2010

Вам нужен какой-то способ проверки личности пользователя, чтобы другие люди не могли сбросить пароль. Возможно, вы могли бы заставить их задать некоторые вопросы (например, девичья фамилия матери, любимый цвет), когда они зарегистрируются Они могут сбросить свой пароль, только если они правильно ответят на вопросы.

2 голосов
/ 16 апреля 2010

У меня была такая же проблема с очень странным и требовательным клиентом.Сайт представлял собой интранет компании, доступ к которому можно получить через VPN для удаленных сотрудников.Одно из требований (оно было выделено жирным шрифтом):

Механизм переустановки пароля должен быть удобным и не полагаться на электронную почту.Запросы на переустановку должны удовлетворяться удобным образом и требовать доказательств того, что сайт доверял посетителю до запроса переустановки

В результате я сгенерировал Мандерболт (100x100) дляпользователь должен загрузить в качестве своего жетона «переустановки» вместе с некоторыми секретными вопросами, на которые ему придется ответить.Чтобы изменить свой пароль, они должны будут ответить на свои вопросы и загрузить свой фрактал (квадратичная плоскость была определена на основе их личной информации с простым хешированием, чтобы избежать коллизий).

Это удовлетворяло требованию, что пароль переустанавливаетсядолжны были основываться на том, что они имели , а также на том, что они знали .Если они потеряли фрактал или забыли ответы на свои секретные вопросы, они должны были появиться лично, чтобы восстановить пароль.

Не совсем пуленепробиваемый, но он удовлетворял потребности в то время.Задача заключалась в том, чтобы сделать фракталы уникальными (не менее 30 пикселей), так как большинство пользователей делилось множеством общих личных данных (город, штат, код города и т. Д.).

Редактировать

Фрактал (точнее, его одностороннее представление) использовался и в других местах.Think RFID + камера .

2 голосов
/ 16 апреля 2010

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

РЕДАКТИРОВАТЬ: Так как это для пользователей, которые забыли свой пароль, а не принудительное изменение, вы должны просто взять их прямо на ссылку, которую вы бы по электронной почте их в любом случае, когда они забыли свой пароль. Заставьте их ввести адрес электронной почты, на котором они зарегистрированы, и некоторые другие данные, которые вы можете проверить. В основном то, что говорили другие ответы.

1 голос
/ 16 апреля 2010

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

1 голос
/ 16 апреля 2010

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

1 голос
/ 16 апреля 2010

Вы можете использовать стандартную почту для отправки нового пароля: -).

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

0 голосов
/ 16 апреля 2010

Обычный ответ на этот вопрос - это вопрос безопасности. Если у вас нет каких-либо препятствий для перехода пользователя, вы открываете систему, чтобы почти каждый мог сбросить пароль.

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