为了让英格兰各地的患者更轻松、更快速地安全地访问多种数字健康和社会护理服务,英国国家卫生服务体系 (NHS) 创建了 NHS 登录,这是一种基于 OpenID Connect 的身份验证和身份验证服务,允许公众通过一次登录访问 NHS 资源。 NHS登录可用于通过显示NHS登录按钮的应用程序和网站安全地访问机密的健康和护理信息。

NHS应用程序提供了对一系列NHS服务的简单和安全的访问,例如在iOS和Android上预订医疗预约和订购重复处方,是第一个使用 NHS登录来识别和验证用户的服务。 NHS登录和NHS应用程序最初是同时推出的,这为这两个项目创造了一个自然的机会,可以密切合作并收集最初的用户反馈。

通过NHS登录和NHS应用程序,NHS面临的挑战是提供安全、用户友好的多因素身份验证机制,这些机制在短时间内符合为公共服务设定的标准和准则。 NHS 求助于 FIDO 身份验证来解决这一挑战。

挑战
合规、用户友好的登录

由于NHS应用程序提供的信息的敏感性,安全性至关重要。 因此,用户在登录应用程序时必须使用双因素身份验证 (2FA) 方法,这需要密码和短信一次性密码 (OTP)。 很快,人们就发现,身份验证方法对用户来说过于繁琐,并成为采用的真正障碍。 NHS 意识到需要一种替代的无密码登录方法来简化用户的日常访问。

这给创建NHS登录名和NHS应用程序的NHS数字团队带来了挑战:新的解决方案不仅需要满足为公共服务设定的安全标准和准则,而且由于部长级的承诺,它必须在非常紧迫的期限内完成。

通往 FIDO 之路:
NHS对NHS登录和NHS应用程序的评估过程

NHS登录和NHS应用程序的一个基本要求是全国公认的健康和护理身份管理方法,符合英国政府认可的身份保证原则。 NHS Digital决定,为了满足这些标准,生物识别登录将是应用程序的替代登录方法。 由于NHS登录已经使用OpenID Connect授权码流协议(一种开放标准和去中心化的身份验证协议)进行用户身份验证,因此任何用于开发生物识别登录的平台都需要非常重视开发具有开放和可扩展标准的平台。

NHS登录团队研究了许多可以满足他们需求的平台,并根据六个标准衡量了每个平台,包括:

1. 开放、可扩展的标准

2. 公钥加密

3. 存储在用户设备上的生物识别信息,而不是 NHS 或医疗提供商的服务器上

4. 支持 Android 和 iOS 移动平台

5. 市场/行业不可知

6. 由成熟的应用程序和组织使用

NHS 登录团队的研究显示,FIDO 身份验证,特别是来自 FIDO Alliance的 FIDO UAF 协议,满足上述所有标准。 他们发现,将FIDO与OpenID Connect授权代码流结合使用将有助于NHS登录,使他们的合作伙伴能够通过基于设备的生物识别身份验证为患者提供增强的登录体验。

概述


FIDO 协议(包括 FIDO UAF 和 FIDO2 规范)使用标准公钥加密技术而不是共享机密,以提供更强大的身份验证和保护,防止网络钓鱼和通道攻击。 这些协议也是从头开始设计的,以保护用户隐私。 这些协议不提供可供不同在线服务用于跨服务协作和跟踪用户的信息,并且生物识别技术在使用时永远不会离开用户的设备。 这一切都与用户友好和安全的用户体验相平衡,通过登录时的简单操作,例如滑动手指、输入 PIN、对着麦克风讲话、插入第二因素设备或按下按钮。

解决方案
NHS Digital 认为生物识别身份验证最能满足其需求,在搜索符合其要求的平台后,发现 FIDO Alliance 的 FIDO UAF 最符合标准,包括开放和可扩展的标准以及对移动浏览器的支持。

结果
具有生物识别身份验证登录选项的 NHS 应用程序拥有约 120 万用户群,并且以平均每周 32,000 名新用户的速度增长。NHS Digital 需要向用户发送的 SMS OTP 数量从每个用户每月约 4 个下降到每月约 1.5 个,减少了近三分之二,这为该组织节省了大量成本。

FIDO 协议内部

FIDO 协议(包括 FIDO UAF)使用标准公钥加密技术而不是共享密钥来提供更强的身份验证。 这些协议也是从头开始设计的,以保护用户隐私。 这些协议不提供可供不同在线服务用于跨服务协作和跟踪用户的信息,并且生物识别信息永远不会离开用户的设备。 这一切都与通过登录时的简单操作(例如指纹或面部生物识别)提供用户友好和安全的用户体验相平衡。


“FIDO 生物识别技术使用户能够使用基于设备的身份验证,使使用 NHS 登录访问 NHS 服务变得更加容易。我们不断收到关于使用指纹和面部识别访问健康和护理网站和应用程序的速度和直接性的积极反馈。

– Melissa Ruscoe,NHS 登录项目负责人

FIDO UAF 开发

NHS 使用其内部开发团队集成了 FIDO UAF,采用了 eBay 的开源 UAF 服务器。 此外,由于 NHS 登录是一种无服务器架构,因此 NHS Digital 需要重写 FIDO 服务器,以便在 AWS Lambda 上以最佳方式运行,这是他们在 DynamoDB 支持的 Python 中完成的。 NHS 应用程序还使用 eBay 开源 UAF 客户端作为 Android 实施的指南。 这需要相当多的调整,包括用 Kotlin 重写它,并将其打包为客户端。 NHS 应用程序还使用使用 Cocoapods 打包的 Swift 编程语言创建了一个 iOS UAF 客户端。

FIDO UAF 的部署和用户体验

在最初认为需要利用 FIDO UAF 将 NHS 应用程序构建为患者的综合门户之后,NHS Digital 只需要包含患者通常在线寻求的基本信息。 通过保持“薄”,NHS Digital可以允许那些使用该平台的人在NHS应用程序之上提出自己的功能。 为了促进用户开发,NHS Digital公开了API,以便其他人可以开发自己独特的应用程序来满足自己用户的特定需求,同时仍然授予对其数据的安全访问。

截至 2020 年 10 月,有 20 个实时合作伙伴和服务与 NHS 登录集成。 NHS App(带有生物识别身份验证登录选项)拥有约120万用户群,平均每周完成250,000个FIDO授权请求。 同时,用户群继续以每周 32,000 名新用户的速度增长,其中大约 25,000 名用户设置了 FIDO UAF 生物识别身份验证。 生物识别认证大大减少了NHS Digital必须发送给用户的短信一次性密码(OTP)数量,减少了近三分之二,从每个用户每月约4个用户减少到每月1.5个用户。 这也为组织节省了大量成本,因为每个 SMS OTP 的平均成本为 1.58 便士加上增值税。

未来的改进

NHS digital致力于开源解决方案,FIDO客户端库已经可用于iOS和Android,并正在努力使FIDO服务器库开源。

对于未来,NHS Digital正在考虑使用FIDO2 WebAuthn来支持更广泛的用例和应用。

在此处查看NHS案例研究PDF文档。