Firefox引入对Web Authentication API的支持

综合技术 2018-05-28 阅读原文

看新闻很累?看技术新闻更累?试试下载InfoQ手机客户端,每天上下班路上听新闻,有趣还有料!

Firefox 60在5月9日发布,Firefox成为了第一个支持Web Authentication API的主流浏览器。该API能够让用户避免为Web站点使用基于文本的密码,而是使用带有生物特征检查或私有PIN的本地设备来生成安全的加密标识符。Chrome和Edge对该API的支持正在开发之中,而Safari正在考虑对它的支持。

这个规范来源于 FIDO Alliance
和W3C之间的合作。按照 FIDO Alliance站点所述

来自FIDO Alliance的规范和证书能够构建一个基于硬件、移动和生物特征认证器(authenticator)的互操作生态系统,它可以与许多的应用程序和Web站点一起使用。这个生态系统能够让企业和服务提供商部署强认证解决方案,减少对密码的依赖,从而防止通过窃取密码所引发的钓鱼、中间人和重放攻击。

Web Authentication API
能够让用户规避为每个Web站点记忆密码的不安全性和挫败感,而是通过像手机或USB这样的物理设备来进行简单的生物特征检查。在一篇博客文章中,Duo Security的Nick Steele阐述了 它看上去会是什么样子的

在实践中,WebAuthn的运行方式有很多种,但是最常见的样例如下所示:用户通过笔记本电脑访问一个Web站点,比如说cat-facts.com,并且注册一个账号。在网站上点击完开始注册的按钮之后,他们将会在手机上收到一个提示,内容为“Register with cat-facts.com”。

他们在接受该请求之后,系统会要求用户执行一个“授权手势”,比如输入PIN或者生物特征的动作,使其与正在创建的账号进行关联。在提供完这些信息之后,笔记本电脑上的Web站点将会展现一些内容,表示“Registration complete!”。

现在,用户可以使用相同的手机或者授权手势登录cat-facts.com。

按照 Chrome tracking bug
,Web Authentication API会在Google Chrome 67桌面版中提供,按照日程它会在2018年5月27日发布。Microsoft Edge支持该API的一个较早版本,其差异在 他们的开发者文档
中进行了阐述。目前有一个 polyfill
,通过它能够在Edge中支持当前版本的API。至于Safari,目前的状态尚不明确。 Chrome tracker
显示Safari正在开发该API, webkit特性状态
却显示它们正处于“考虑中”。

在9 to 5 Mac站点上,有一篇 文章
阐述了为何应该鼓励苹果实现该特性:

Safari目前还没有表态,但是最近上市的iPhone和iPad都提供了Face ID或Touch ID,而后者在MacBook Pro上也得到了支持,这是为苹果量身定做的。如果没有苹果的支持,它无法用到其他的浏览器中。

想尝鲜体验Web Authentication API的开发人员可以通过谷歌开发者Web站点上的一个 简短教程
进行学习,或者通过MDN上的 文档
深入学习。

查看英文原文: Firefox Introduces Web Authentication API

InfoQ

责编内容by:InfoQ阅读原文】。感谢您的支持!

您可能感兴趣的

Asp.Net Core 2.0 Web Api Unit Testing There exist many kind of tests: unit tests, integration tests, acceptance test, UI tests. The goal of this tutorial...
API Design, Part 1: Before There Was REST I’ve heard a lot of opinions about API design. This is great—I love opinions. I want folks to inform their opinions...
Consolidating Your API Gateway and Load Balancer w... Now that software load balancers are the standard in modern, DevOps‑driven organizations, what new challenges have we cr...
REST API in Power BI – Dataset, Import, Reports, P... 1. Objective In our previous two tutorials, we covered most of the Power BI REST API through Part -1 & Part ...
Appium常用API (1)获取当前页面的activity名,比如: (.ui.login.ViewPage) current_activity() 比如我们需要实现这个登录的功能时,主要思路为如果当前界面为登录页面时,就进行登录行为,否则就...