Каковы плюсы и минусы использования адреса электронной почты в качестве идентификатора пользователя? - PullRequest
66 голосов
/ 15 марта 2009

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

ПРОФИ

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

  2. Адрес электронной почты легче запомнить. (спасибо Митч , Джереми )

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

CONS

  1. Пользователь должен вводить больше при каждом входе в систему.

  2. Что делать, если пользователю нужны несколько учетных записей? Им понадобится другой адрес электронной почты. (Хочу ли я, чтобы пользователь мог создавать несколько учетных записей?)

  3. Легко угадать потенциальному злоумышленнику (если он знает адрес электронной почты цели, он знает идентификатор входа в систему). (спасибо Василь )

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

  5. Если вы часто меняете адреса электронной почты, может быть трудно вспомнить, какой адрес вы использовали для регистрации на сайте после долгого перерыва. (спасибо Программное обеспечение Monkey )

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

  7. Не у всех есть адрес электронной почты. (спасибо Николай )

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

Другим вариантом является реализация OpenID (что является еще одной дискуссией).

Кажется, это работает для Google, но их сервисы тесно интегрированы. Что я упустил в своем анализе? У вас есть какие-нибудь рекомендации? У кого-нибудь есть опыт, которым можно поделиться?

ОКОНЧАТЕЛЬНОЕ РЕДАКТИРОВАНИЕ

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

Ответы [ 15 ]

31 голосов
/ 15 марта 2009

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

Только мои 2 цента!

25 голосов
/ 15 марта 2009

Я думаю, что вы пропустили PRO:

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

12 голосов
/ 15 марта 2009

CONS

  1. Когда для учетной записи электронной почты используется один и тот же пароль, компрометация одного автоматически означает компрометацию другого.
11 голосов
/ 15 марта 2009

CON: не у всех есть адрес электронной почты. Подумайте, есть ли когда-нибудь доступ к вашей базе данных из внутреннего приложения. Если вы работаете в магазине, люди позвонят , позвонят и разместят заказ по телефону и откажутся предоставить адрес электронной почты. Так что, имея адрес электронной почты в качестве идентификатора пользователя по умолчанию, это здорово, не забудьте разрешить альтернативам попадать в систему. (Конечно, это зависит от контекста.)

Изучил этот трудный путь.

11 голосов
/ 15 марта 2009

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

Также мне нравится OpenID.

4 голосов
/ 15 марта 2009

Я, как правило, не предпочитаю списки «за» и «против», а вместо этого стараюсь думать о преимуществах и проблемах.

Проблема:

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

Вместо того, чтобы:

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

3 голосов
/ 17 марта 2009

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

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

2 голосов
/ 15 марта 2009

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

Вам не стоит беспокоиться о том, что они слишком длинные, поскольку все основные браузеры (IE, FF и т. Д.) Предлагают автозаполнение форм, которое включено по умолчанию, поэтому вы вводите первые буквы в своем письме и получаете раскрывающийся список (т. е. список автозаполнения), в котором вы просто нажимаете, чтобы ввести всю электронную почту, лично я почти никогда не набираю адрес электронной почты полностью, я всегда набираю первые буквы, а затем выбираю электронную почту из раскрывающегося списка автозаполнения. Кроме того, если вы разрешите запоминание пользователей (используя флажок «Запомнить меня» и постоянные файлы cookie), это станет еще одной причиной, чтобы не беспокоиться об этом.

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

2 голосов
/ 15 марта 2009

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

2 голосов
/ 15 марта 2009

CON: Если хакер может попытаться зарегистрировать случайные адреса электронной почты в массовом порядке, он или она сможет выяснить, какой из этих адресов действителен, на основании того, что регистрация не удалась. Это тактика, которая может использоваться для составления списков известных действительных адресов электронной почты, которые являются популярным товаром на черном рынке спама.

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

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