编辑

肖恩·米勒,RSA

抽象

企业应考虑使用密钥,尤其是在他们目前依赖密码的情况下。 通过用密钥替换这些凭证,企业将立即降低网络钓鱼的风险并消除凭证重用,从而提高身份验证服务的安全性。 可以使用不同类型的 FIDO 身份验证器来满足用户的需求,并在便利性和安全性之间取得平衡。 对于需要高级别身份保证、内部安全策略或法规要求的企业,需要额外的审查来确定适当的密钥类型。 将企业作为一个整体以及组织的各个部分都视为一个重要的部分,因为高保证要求可能不适用于整个企业。

对于许多高确定性方案,经证明 device-bound passkeys 可能更可取。 具有高保证要求的信赖方将需要决定是接受所有类型的身份验证器并根据认证特征调整其身份验证流程,还是拒绝来自未经认证或不可接受的认证器的注册,冒着用户体验不佳的风险。

观众

本白皮书适用于正在考虑在企业中部署 FIDO 身份验证并定义生命周期管理策略的 IT 管理员和企业安全架构师。 本白皮书概述了多重身份验证 MFA 的不同使用案例,以及可供管理员使用的 FIDO Authenticator 选项。 目的是帮助指导管理员为其特定环境选择正确的身份验证器类型。 需要更高级别安全性的公司,例如涉及医疗保健的公司、政府组织或对凭证控制有硬性要求的金融机构,尤其应阅读本白皮书。

本文假定读者了解 FIDO 架构、依赖方、协议,并已阅读“FIDO EDWG 2023 论文 – 简介”,其中介绍了本白皮书中使用的关键概念。

1. 引言

本文档重点介绍如何在高确定环境中为企业用户部署密钥。
读者可以在此处找到该系列论文的介绍。 介绍性白皮书提供了该系列中所有论文的其他描述和链接,这些论文涵盖了从低确定度到高确定度的一系列使用案例。 大多数企业可能会有跨越多篇这些文章的使用案例,我们鼓励读者查看与其部署环境相关的白皮书。

本白皮书探讨了处于高保证环境中意味着什么,以及它如何影响 FIDO 的使用方式。 更具体地说,该文件解决了仅密码身份验证的挑战,并提出了密钥作为使用密码对用户进行身份验证的更强大、更防网络钓鱼的替代方案。 此外,本文档还为 IT 和安全专业人员提供了一些采用注意事项,供其考虑,以确保符合高确定性身份验证方案的法规和安全要求。 本白皮书探讨了注册设备、使用已注册设备以及处理恢复丢失设备的使用案例。

决定是否应在环境中允许使用密钥的关键部分是基于证明。 作为注册过程的一部分,可以为凭据提供证明,依赖方可以信任这些证明作为正在使用的验证器的来源。 对于高确定性企业方案,应始终请求证明。 从与凭据关联的证明中可以发现的内容或缺少任何证明,有助于推动有关是否接受注册的策略决策。 如果没有任何证明,信赖方可能很难决定是否应允许使用该凭证。 他们可能会直接拒绝注册,从而导致用户体验不佳,或者企业可能会选择使用额外的条件多因素身份验证 (MFA) 以及 FIDO 身份验证来满足高保证要求。 通过认证,企业可以保证验证器的来源、制造类型、认证和功能,并且通常可以将这些保证作为 MFA 设备,提供多种因素(如凭证和 PIN)来解锁验证器。

同步密钥在许多使用案例中效果很好,并且仍然适用于某些高确定性场景,具体取决于企业的安全或法规要求。 同步密钥因其可恢复性和易用性而具有吸引力;但是,它们也会更改凭证的驻留位置以及控制凭证的人员。 鉴于凭证的这种外部控制,对于 synced passkeys ,可能需要一些额外的 MFA,其中企业可以控制 MFA 方法的生命周期管理。

本白皮书的其余部分将研究根据 Authenticator Assurance Levels [7] 和 FIDO Certified Authenticator Levels [8] 具有高保证要求的企业或组织。

2. 通行密钥 使用案例

本节将重点介绍企业或组织中有关密钥的使用案例。 对于企业来说,在许多用例中, synced passkeys 可以很好地工作,以便于注册设备、使用设备和恢复丢失的设备,因为凭证在其他设备上可用。 强烈建议组织查看 synced passkeys 的所有好处,以确定它们是否适合组织。 但是,使用 synced passkeys虽然方便,但可能无法满足需要高保证的企业或组织的所有安全要求(例如 AAL3 要求)。 AAL3 级别有几个要求,其中最重要的是使用基于硬件的身份验证器。 请参阅 NIST,了解有关不同级别的 Authenticator 保证级别 (AAL) [7] 的更多详细信息。 通常,AAL3 适用于需要更高级别安全性的公司和组织,例如涉及医疗保健、政府或金融的公司和组织,这些公司和组织对凭证的控制有硬性要求,具体来说,它是设备绑定的,并且永远不会被复制。

2.1. 注册
企业或组织应首先考虑他们将在其环境中支持哪些设备,以及他们将如何管理设备的配置。 例如,组织可能支持用户可以自带设备(例如移动电话)的环境,或者组织可能对满足特定安全要求(如 PIN 长度、特定用户存在功能甚至特定硬件型号)的已颁发设备有非常严格的要求。 最后,组织需要考虑他们是允许密钥驻留在多台设备上,还是只允许一台设备上。 这同时具有需要考虑的安全性和恢复影响。

组织可能有一些使用案例要求凭证与设备绑定且根本不可复制,在这种情况下,不建议 synced passkeys 。 组织可以选择允许 synced passkeys 与传统 MFA 机制一起使用,将密码替换为密钥。 但是,如果组织对凭证的驻留位置有严格的要求,则应仔细考虑限制使用 device-bound passkeys。 这些因素将决定组织如何管理注册。 如果需要限制密钥的类型,所有这些情况都会给依赖方带来一些额外的负担。

在注册过程中,依赖方可能需要检查是否满足某些要求,例如要求身份验证器满足或超过 FIDO L1+ 认证 [8]。 要评估验证者是否符合这些要求,验证者必须提供可验证和检查的证明。 如果身份验证器不满足 L1+ 的要求,则依赖方可能被迫拒绝注册,因为无法证明凭据的来源,或者该方可能会考虑使用额外的 MFA 进行实施以满足高保证的要求。

如果提供了证明,则依赖方可以检查设备类型以及是否满足企业或组织的要求。 如果证明可用,则依赖方可能还希望根据验证器的唯一标识符进行限制。 唯一标识符称为 Authenticator Attestation Globally Unique Identifier (AAGUID),可用于根据 FIDO Alliance 元数据服务 [2] 查找详细信息,以了解正在注册的设备类型、认证级别以及它提供的功能。

企业认证是另一种可在注册期间利用的认证形式。 这是由一些身份验证器供应商实现的,以添加组织独有的其他信息。 将这些附加信息作为证明的一部分并缩小允许的验证器范围可用于进一步增强注册体验。

同样,可能存在有关凭证是否符合备份条件和/或是否已备份的标志。 但是,如果没有设备经过认证的一些证明,这些标志是不可信的。 依赖方可能会根据此信息以及运行时提供的其他信息来决定允许或拒绝注册。

遗憾的是,如果依赖方未能注册凭据,它会强制用户在第 1 步使用不同的验证器再次重复注册过程。 尽管 WebAuthn [5] 不支持预检机制来识别合适的身份验证器,但依赖方可以在注册之前向用户提供反馈,以确定可接受的身份验证器。 注册失败后,可以提供其他指导,以指导用户选择身份验证器。 该指南应明确说明,并确定认证器在注册期间被拒绝的原因、哪些认证器符合 RP 的要求,以及有关管理浏览器在通信证明方面强制选择的指南。

依赖方应该能够在描述验证方的要求时更具规范性,从而提供更好的用户体验,因为最终用户只能选择满足要求的验证方,并减轻依赖方的负担。 这些更改已向 WebAuthn 提出,但尚未获得平台供应商的支持。

企业的另一种方法可能是不提供任何向最终用户公开的注册用例。 相反,企业将在将设备预置给用户之前管理注册设备的生命周期。 同样,企业可能会提供某种形式的监督式注册体验,以确保仅配置和注册授权的身份验证器。 这避免了上述用户体验的许多陷阱,但给企业带来了更多的生命周期管理负担。

2.2. Sign In
注册凭证后,可以在身份验证时在需要时访问 FIDO 凭证。 应用程序将利用 WebAuthn 浏览器 API 或平台密钥 API 使用已注册的设备执行 FIDO 身份验证。 根据已注册设备的类型,身份验证将涉及多个因素,例如输入 PIN 或用户状态质询。 这些交互的要求是,必须高度保证用户是他们所说的那个人,并且他们没有冒充任何用户。 需要在注册过程中强制执行这些要求,以确保允许设备满足企业或组织的要求。

在此用例中 synced passkeys 和设备 device-bound passkeys 之间的唯一区别是需要进行身份验证的内容。 对于 device-bound passkeys,需要注册过程中使用的原始硬件设备。 同步的密钥可以从多个设备访问,这些设备可以访问由密钥提供商托管的账户。 此外,一些 synced passkeys 可能会在注册后共享。 信赖方在当前规范中没有用于识别共享凭证的机制,这使得更难理解和管理 synced passkeys的生命周期。

关于“为企业用例选择 FIDO 身份验证器”的白皮书 [4] 中介绍了几个企业用例。 组织应审查这些内容以评估如何利用 FIDO。 特别是,计划将 FIDO 作为第一因素(无密码)或第二因素的组织是一个关键决策,白皮书可以帮助组织了解真正需要高保证的是什么。 例如,可能有一个特定的项目,或者一个用例可能适用于由政府或法规要求驱动的整个行业。 例如,可能允许员工使用同步的密钥访问笔记本电脑,但随后需要使用设备绑定的密钥登录特定应用程序,该应用程序仅限于具有特定权限级别的某些员工。

2.3. Recovery/Lost Device
恢复是同步密钥的亮点。 如果丢失了持有凭证的 FIDO 设备,他们只能从共享同一平台账户的不同设备访问凭证。 这很方便,但也意味着密钥的安全性仅与与之关联的平台帐户一样安全。 企业在依赖组织外部的服务之前,应检查供应商解决方案以了解其安全性。 例如,它是否使用供应商不知道的密钥提供端到端加密? 使用哪些其他措施(如 MFA)来保护用户的账户? 帐户恢复使用什么过程? 最终用户可能不关心此类问题,但这些详细信息可能代表组织安全管理员的安全问题。 需要检查组织的安全要求,以查看外部方是否可以存储和管理凭据。 此外,在不需要证明的情况下,依赖方不知道凭据的颁发者是谁或是什么,无论是平台、漫游身份验证器、浏览器插件还是其他东西。 因此,依赖方无法提供有关如何在提供高保证的同时恢复对凭证的访问的任何指导。 需要一种替代的帐户恢复形式,而不是恢复 FIDO 凭据,以验证用户的身份并颁发新设备和凭据。 最后,信赖方不知道在使用 synced 时从提供程序恢复密钥。 这表示企业未意识到的潜在攻击。

对于 device-bound passkeys,恢复过程更加复杂,并且可能需要帮助台 [6] 的参与才能颁发新设备,并可能撤销对旧设备的访问权限。 这是一种安全优先的方法,而不是便利性,它允许企业或组织控制谁拥有设备。 这确实意味着最终用户需要执行其他步骤才能重新获得访问权限。 但是,这使企业能够更好地控制凭据的生命周期,允许企业随时撤销身份验证器或使身份验证器过期,并能够保证凭据不被复制或不存在企业控制之外。 一些企业通过配置多个设备以便用户可以自行恢复来解决这个问题。 最终,需要做出有关恢复模型的业务决策。 在某些情况下,在用户可以接收新设备之前阻止访问可能是合适的,因为在较低的安全模型上会损失生产力。 如果企业选择管理注册体验,则注册步骤中突出显示的额外负担会直接影响恢复/替换体验。

2.4. Unregistering
在某些时候,员工要么离开一个项目,要么离开整个企业。 企业将希望确保他们能够控制凭据并取消注册其使用,以便不再能够访问。 当涉及到企业无法完全控制凭据的生命周期和管理的 synced passkeys 时,这是一个更大的考虑因素。 如果 synced passkeys 需要额外的 MFA,企业可以控制 MFA 方面,使所涉及的因素过期,因此不再允许进行身份验证。 设备绑定的密钥环境对取消注册设备具有更大的控制权,要么通过物理方式提交设备并知道未创建任何副本,要么使设备失效/过期,以便后续身份验证尝试失败。

凭证生命周期要求能够禁用或删除凭证,无论是由于员工身份的变化(例如请假或离职),还是由于凭证可能丢失或泄露。 在这些情况下,通行密钥 与密码不同,因为用户可能向信赖方注册了多个密钥,而密码则相反,在密码中,用户每个信赖方只能有一个密码。 在用户和企业之间永久分离的情况下,禁用用户帐户和/或在服务中轮换凭据是标准做法,以确保用户无法再进行身份验证。 如果离职是临时的,例如请假,企业可以选择轮换所有用户的凭证或禁用用户账户,直到用户返回。

在凭据丢失的情况下,后续步骤取决于部署方案。 如果用户使用 device-bound passkeys ,如果丢失了安全密钥,则应由该服务撤销凭证。 同步密钥会带来额外的挑战。 如果设备已泄露,则 RP 应将驻留在设备上的所有凭证(包括驻留在不同密钥提供商中的凭证)视为已泄露并撤销。 如果用户的密钥提供商帐户已被盗用,则必须撤销存储在提供商处的受影响凭证。 为了便于在这些情况下吊销,RP 应允许用户在注册期间命名或以其他方式标识凭据,以便在可能的情况下促进特定凭据的吊销。 管理控制必须将重点缩小到从 RP 中删除凭据,而不是从硬件安全密钥或密钥提供程序的同步结构中删除凭据私钥材料,这是不可能的。

3. 部署策略

在高确定性环境中,企业可能希望管理所有身份验证器的分发和停用。 设备绑定的密钥将由 IT 管理并提供给个人。 依赖方需要检查证明,并且只允许注册由企业或组织管理的验证器。 如果证明不存在或不满足安全要求,则注册应失败。 应建立流程来管理验证器池,以确保在个人离开或不再需要高级访问权限时,这些验证器会停用。 最后,组织或企业应定义恢复丢失/被盗设备的流程。 根据访问权限对业务连续性的重要性,可能会为给定的个人发放多个硬件设备,以确保他们始终具有访问权限。

4. 结论

毫无疑问,密钥是传统密码的强大防网络钓鱼替代选项。 在企业环境中,请务必查看安全和法规要求,以确定 synced passkeys 是否有效,或者是否存在更严格的约束,例如内部安全策略、法规或合规性要求,这些要求需要使用 device-bound passkeys。 无论采用哪种方法,企业都应该花时间了解如何管理 FIDO 凭证的注册、管理和恢复。 这包括重要的使用案例,例如存储凭据(外部)、恢复丢失的凭据以及在员工离职时取消注册设备。 根据企业的要求,密钥可以在没有任何自定义的情况下工作,或者企业可能需要投资以确保其身份验证体验得到更多管理并筛选到特定设备。

5. 后续步骤:立即开始

  • 使用 FIDO 标准。
  • 考虑您的依赖方支持什么,并考虑您的企业安全要求。
  • 通行密钥 比密码安全得多。 在支持通行密钥的网站和应用程序上查找通行密钥图标。

有关密钥的更多信息,请访问 FIDO Alliance 网站 [3]。

6. 参考资料

[1] FIDO 在企业中部署 通行密钥 – 简介
[2] FIDO Alliance 元数据服务 – https://fidoalliance.org/metadata/
[3] 通行密钥 (通行密钥 Authentication) –
%20FIDO%20Security%20Keys%20支持,可发现%20credentials%与%20user%20验证
[4] FIDO Alliance 白皮书:为企业使用案例选择 FIDO 身份验证器 –
https://fidoalliance.org/white-paper-choosing-fido-authenticators-for-enterprise-use-cases/
[5] WebAuthn – https://fidoalliance.org/fido2-2/fido2-web-authentication-webauthn/
[6] FIDO 帐户恢复最佳实践 –
https://media.fidoalliance.org/wp-content/uploads/2019/02/FIDO_Account_Recovery_Best_Practices-1.pdf
[7] NIST Authenticator 保证级别 – https://pages.nist.gov/800-63-3-Implementation-Resources/63B/AAL/
[8] FIDO 认证 Authenticator 级别 – https://fidoalliance.org/certification/authenticator-certification-levels/

7. 鸣谢

我们要感谢所有参与小组讨论或花时间审阅本文并提供意见的 FIDO Alliance 成员,特别是:

  • Matthew Estes,Amazon Web Services
  • 约翰·丰塔纳,Yubico
  • Rew Islam,Dashlane
  • Amazon Web Services 的 Dean H. Saxe,FIDO 企业部署工作组联合主席
  • Johannes Stockmann,Okta
  • Shane Weeden,IBM 公司
  • 来自 Amazon Web Services 的 Khaled Zaky
  • FIDO Enterprise 部署组成员

More

白皮书:高保障企业 FIDO 身份验证

本白皮书讨论了为需要高度身份保…

阅读更多 →

白皮书:针对中等保障用例的 FIDO 身份验证

本白皮书为企业提供指导,帮助他…

阅读更多 →