Какие есть способы верификации пользователя по email?

Здравствуйте. Использую обычный скрипт регистрации с подтверждением по email. То есть пользователь вводит логин (он же email) и пароль после чего на указанный им email летит ссылка на страницу верификации с get параметром в виде уникального хэша, что хранится в базе с его логином и паролем. На странице верификации хэш, который в базе и который пришел внутри get параметра сравниваются и т.д.

Вопрос: как мне достоверно определить почтовый адрес, с которого перешел пользователь для подтверждения? Теоретически ссылка подтверждения может улететь не туда куда надо и верификацию пройдет уже др. человек. Как вы сравниваете пользователя, который только что проходил процедуру регистрации и пользователя, который прошел по ссылке подтверждения?

Возможно ответ на этот вопрос прост, но я не имею большого опыта в этом деле поэтому прошу совета.

Спасибо.
  • Вопрос задан
  • 5641 просмотр
Решения вопроса 2
dizballanze
@dizballanze
Software developer at Yandex
Если боитесь, что ссылка случайно попадет на другой email (что очень мало вероятно), просите, после перехода по ссылке, ввести email адрес, указанный при регистрации и сверяйте со значением из БД.
Ответ написан
Комментировать
ScorpLeX
@ScorpLeX
У вас паранойя, для разработчика конечно хорошее качество, но это уже через чур.
Почитайте про протокол передачи почты, куда то не туда улететь не сможет.
Вообще в этом смысла мало, пользователь может легко подтвердить почту с другого устройства\программы или по прошествии долгого времени.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 3
@seweb
Добавляй в ссылку верификации адрес почты. По-моему, это лучший вариант.
Ответ написан
sashablashenkov
@sashablashenkov
Первое, что пришло на голову -- сверить IP регистрации и IP перехода по ссылке. Ну и ограничение по времени, ссылка будет работать n минут.

И это сделать все вместе
Ответ написан
@DuD
Можно просматривать referer.
Но это решение уже больше для самопроверки. Т.е. если в referer есть нужный email то вероятность того что пользователь тот кого за себя выдаёт выше.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
19 апр. 2024, в 05:01
999999 руб./за проект
19 апр. 2024, в 03:52
1000 руб./за проект
19 апр. 2024, в 03:01
1000 руб./за проект