Відповіді:
В залежності від вашої цільової аудиторії ( «нормальні», дуже розбираються в технологіях, або походить з соціальних мереж) або :
або
У обох є свої проблеми.
У деяких аудиторіях адреси електронної пошти сильно змінюються. Вам потрібен хороший механізм відновлення облікового запису, бажано з можливістю додавання декількох адрес електронної пошти до кожного облікового запису. Але все-таки адреси електронної пошти як імена користувачів перевершують власні обрані імена користувачів, оскільки люди можуть запам'ятати їх, а використання просто електронної пошти + пароля спрощує процес реєстрації.
OpenID, Facebook Connect тощо чудові. Але посередництво "Я на сайті B , і я не можу увійти. Мені потрібно зайти на сайт А, щоб перевірити свої облікові дані", на масовому ринку поки що не зрозуміла. OpenID чудово працює з аудиторіями, які користуються технологіями, як показано на сайтах Stack Exchange ...
Висновок: Вам потрібно ретельно розглянути цільову аудиторію та, якщо можливо, провести тест на корисність передпокою різних механізмів аутентифікації.
З обома проблемами, вірите чи ні.
Здається, люди змінюють електронну пошту майже постійно. Чим вони молодші, тим гірше. З цієї причини важко пов’язати облікові записи електронною поштою. Однак електронні листи здаються людям набагато легшими, ніж імена користувачів.
Імена користувачів чудові тим, що вони часто не змінюються, але люди часто їх забувають. Тоді вам доведеться мати справу і з системою пошуку паролів, і з системою пошуку імені користувача. Подвоїти роботу, половину задоволення.
Я особисто роблю обидва, коли я роблю сайт без якоїсь відкритої системи ідентифікації. Я збираю обидва, зберігаю обидва в БД, потім шукаю на основі введеного значення входу, щоб побачити, який з них вони мали намір використовувати. Очевидно, це означає відсутність символів @ в іменах користувачів. Однак моїм користувачам досить легко запам'ятати принаймні один із двох варіантів. Для пошуку я використовую систему викликів, оскільки я насторожено пишу електронну пошту для цілей перевірки. Хакери можуть отримувати електронні листи ... вони можуть не знати, що ім'я першої собаки або улюблений автомобіль людини.
Здається, OpenId робить цей аргумент менш важливим. Це добре перевірити.
Це також може залежати від того, як ви зберігаєте свою інформацію користувача. Наприклад, якщо ви використовуєте базу даних, яка має основний ключ як ім'я користувача, ви, ймовірно, не хочете використовувати адресу електронної пошти як ім'я користувача, оскільки якщо користувач змінить свою адресу електронної пошти, то це змінить первинний ключ (і викрутить будь-які закордонні ключові посилання).
Ви можете мати поле для імені користувача, якщо бажаєте, щоб користувачі приховували свою електронну адресу або справжнє ім’я від інших користувачів / відвідувачів.
У цих випадках його часто називають псевдонімом, а іноді його можна змінити під час руху, не впливаючи на логін користувача.
Я думаю, що відповідь залежить від того, що ви збираєтеся робити зі зібраною інформацією, наприклад, не надсилаючи електронні листи користувача - не вимагайте електронної адреси, не показуйте інформацію про користувача, не збирайте прізвисько тощо.
Ім'я користувача, електронні адреси та OpenId мають свої плюси і мінуси.
Але ніколи не називайте це ім'ям імені і не вимагайте, щоб це була електронна адреса!
Під час реєстрації я ввожу одне із своїх бажаних імен користувачів як ім’я користувача. І мене це злить, коли після натискання кнопки ОК я отримую повідомлення про те, що ім’я користувача не є дійсною адресою електронної пошти.