authentication - 登录 ID 使用什么?

标签 authentication web-applications account

我们正处于产品重大重写的早期设计阶段。现在我们的客户主要是企业。我们管理账户。每个帐户的用户名都位于自己的命名空间中,但这意味着我们无法在服务器之间移动 Assets 。

我们想要迁移到单个命名空间。但这带来了用户名唯一的问题。

那么最好的主意是什么?

  • 电子邮件地址(带验证)?
  • 唯一的字母数字字符串(“johnsmith9234”)?
  • 我们应该看看 OpenID 吗?

最佳答案

电子邮件地址

理性

  1. 用户不会经常更改电子邮件
  2. 删除了询问用户名和电子邮件地址的步骤,而您无论如何都需要这些
  3. 用户不会经常忘记他们的电子邮件地址(参见第一条)
  4. 电子邮件将是唯一的,除非用户已经注册了该网站,在这种情况下,会将他们转发到忘记密码屏幕
  5. 几乎每个人都使用电子邮件作为访问网站的主要登录信息,这意味着您要求提供电子邮件地址这一事实不会影响采用率
<小时/>

更新

注册后,请务必要求用户创建某种用户名,不要在公共(public)网站上乱扔他们的电子邮件地址!此外,使用电子邮件地址作为登录名的另一个好处是:您不需要任何其他信息(例如密码/密码确认),只需通过邮件向他们发送临时密码,或者完全放弃密码并向他们发送一次性密码每次他们想要登录时的电子邮件地址 URL(请参阅: mugshot.org )

关于authentication - 登录 ID 使用什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6080/

相关文章:

java - 使用 Java EE 开发 Web 应用程序可能会遇到哪些困难(如果有)?

tomcat - 使用 tomcat 和 JNDI 针对多个 AD 组进行用户身份验证

rest - 基于 token 的 REST API 身份验证

php - Laravel 5 授权 : These credentials do not match our records

java - Iterating over a list of Javabeans 格式化输出

java - 使用 IntelliJ 和 Struts 2 的目录层次结构

ios - 如何判断用户是否在iPhone设置中设置了FB账号

algorithm - 使用会计法摊销的时间成本

encryption - Kohana 的 auth 模块中最安全的算法是什么?