Mozilla 建议只使用 Email 登录,不需要用户 ID 和密码

  • Abel Avram
  • 侯伯薇

2011 年 7 月 30 日

话题:Web框架架构DevOps语言 & 开发

Mozilla 最近新建了一套名为 BrowserID 的身份验证系统,旨在解决基本的身份验证需求,但是它是否可以成功还取决于应用的状况。

Mozilla 想要简化连接站点时的身份验证过程,它建议只使用 email 地址,而不需要输入 ID 和密码。这种新的身份验证解决方案叫做BrowserID。邮件地址会在最开始的时候做一次验证,用户可以选择通过 email 提供商或者认证机构的机制来验证——硬件、生物识别技术、密钥等,还可以向用户的收件箱发送邮件,用户点击链接,然后用户就可以通过验证,说明他拥有指定 email 地址。 一位用户可以注册多个 email 地址。之后,当用户登录网站的时候,系统会向其提供已经验证的邮件地址列表,用户可以从中选择一个,然后点击“登录”按钮。此时不需要 ID 和密码。也不会再弹出 OpenID 提供商的身份验证对话框。你可以在这里测试 BrowserID 的登录过程。

BrowserID 基于一种名为邮件验证协议(Verified Email Protocol)的新协议。在协议的核心会解析email 地址的 ID,而不是创建新的用户身份。用户可以从他信任的 email 提供商那里获得 email 地址,然后,如果提供商支持 BrowserID,那么浏览器就可以创建公 - 私钥对。浏览器会保留私钥,并把公钥发送给提供商。 当用户登录站点的时候,浏览器会向其显示之前曾经在一家或多家 email 提供商通过验证的 email 地址,用户从中选择一个,浏览器就会使用相应的私钥签署验证确认,并把相应的确认信息发送给站点,站点会从 email 提供商那里获得公钥,从而对身份进行验证。当然,网站需要信任邮件提供商。如果确认信息是有效的,那么网址就会让用户登录。

为了防止邮件提供商不想实现这个协议或者它是不可信的,还可以由第三方认证机构来持有公钥。这个网页中包含了关于整个身份验证过程更多的细节,并且还涉及到相关的主题: 身份确认和密钥过期、使用多台设备与同步、匿名地址等等。

Mozilla 实验室的 Dan Mills 说,BrowserID 要比其他登录系统好,因为它不会把用户访问了哪个网站的信息发送回任何服务器(甚至不会发送给 BrowserID 服务器)。另外,它可以用于所有流行的浏览器,包括移动设备上的浏览器。 当前对 BrowserID 的实现是使用 HTML 和 JavaScript 完成的,但是 Mozilla“把这个系统设计成为可以无缝整合到将来的浏览器中”。想要为站点实现 BrowserID,开发者不需要做什么,这个项目会通过 email 和第三方认证提供机构挂接到很多站点上。BrowserID 当前还是实验性的项目,它是否可以成功,取决于网络,特别是大厂商,对 Mozilla 的建议做出什么样的响应。BrowserID 可能会成为解决复杂的身份验证问题的简单方案,特别是当前OpenID 看起来有些问题

查看英文原文:Mozilla Proposes to Sign-in Only with the Email Address, No User ID or Password Required
Web框架架构DevOps语言 & 开发