Должна ли форма регистрации пользователя указывать, используется ли уже адрес электронной почты? - PullRequest
8 голосов
/ 08 января 2012

Кажется довольно типичным ограничивать учетные записи пользователей уникальными адресами электронной почты.Поэтому в моей форме регистрации пользователя я проверяю электронную почту и возвращаю сообщение типа

Учетная запись уже зарегистрирована для foo@bar.com

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

Ответы [ 5 ]

5 голосов
/ 08 января 2012

Для большинства видов сайтов я бы ожидал, что явное сокрытие этой информации будет плохим компромиссом для пользователей. Лучшее решение - использовать CAPTCHA, чтобы предотвратить военный набор адресов электронной почты.

Исключение составляют случаи, когда злоумышленник ищет информацию о конкретном пользователе (а не просто пытается найти «какую-то учетную запись»). Например, если ваш сайт обслуживает людей, которые сильно заинтересованы в анонимности, и есть злоумышленники, которые заинтересованы в том, чтобы узнать, использует ли сайт определенный пользователь, тогда подход должен быть другим. Мой подход, скорее всего, заключается в том, чтобы отправить электронное письмо на адрес с указанием «уже зарегистрированной» ошибки. Раздражение пользователя будет перевешиваться интересом анонимности пользователя.

2 голосов
/ 08 января 2012

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

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

1 голос
/ 08 января 2012

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

Или

Как насчет того, чтобы сказать им, что вы отправили электронное письмо на этот адрес иони должны подтвердить - даже если вы этого не сделали.

0 голосов
/ 08 января 2012

Вот варианты, которые я вижу:

1) Появится не очень четкое сообщение об ошибке типа «Адрес электронной почты недействителен»
2) Принять регистрацию и проинформировать пользователя о своей прежней учетной записи по электронной почте (я бы посоветовал)

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

0 голосов
/ 08 января 2012

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

...