使用 Microsoft Entra ID 实现 NIST 验证器保证级别 3

使用本文中有关美国国家标准与技术研究院 (NIST) 验证器保证级别 3 (AAL3) 的信息。

在获取 AAL2 之前,可查看以下资源:

允许的验证器类型

使用 Microsoft 身份验证方法满足所需的 NIST 验证器类型要求。

Microsoft Entra 身份验证方法 NIST 验证器类型
推荐的方法
受硬件保护证书(智能卡/安全密钥/TPM)
FIDO 2 安全密钥
带硬件 TPM 的 Windows Hello 企业版
多重加密硬件
其他方法
密码
AND
- 使用硬件 TPM 进行了 Microsoft Entra 联接
- OR
- 已加入 Microsoft Entra 混合,带硬件 TPM
记住的密码
AND
单因素加密硬件
密码
AND
OATH 硬件令牌(预览版)
AND
- 单因素软件证书
- OR
- 带软件 TPM 的加入了 Microsoft Entra 混合的或合规设备
记住的密码
AND
单因素 OTP 硬件
AND
单因素加密软件

建议

对于 AAL3,建议使用多重加密硬件验证器,该验证器可提供无密码身份验证,从而消除了密码这一最大的攻击面。

如需相关指导,请参阅规划 Microsoft Entra ID 中的无密码身份验证部署。 另请参阅 Windows Hello 企业版部署指南

FIPS 140 验证

验证程序要求

Microsoft Entra ID 使用经过验证且总体达到 Windows FIPS 140 级别 1 的加密模块来执行其身份验证加密操作,使 Microsoft Entra ID 成为合规验证程序。

验证器要求

单因素和多重加密硬件验证器要求。

单因素加密硬件

验证器需要满足以下要求:

  • 整体达到 FIPS 140 级别 1 或更高

  • 物理安全性达到 FIPS 140 级别 3 或更高

加入了 Microsoft Entra 和 Microsoft Entra 混合的设备满足以下条件时满足此要求:

咨询移动设备供应商,了解这些 TPM 是否符合 FIPS 140 要求。

多重加密硬件

验证器需要满足以下要求:

  • 整体达到 FIPS 140 级别 2 或更高

  • 物理安全性达到 FIPS 140 级别 3 或更高

FIDO 2 安全密钥、智能卡和 Windows Hello 企业版有助于满足这些要求。

  • FIDO2 密钥提供商通过 FIPS 认证。 建议查看受支持的 FIDO2 密钥供应商列表。 请咨询你的提供商,了解当前的 FIPS 验证状态。

  • 智能卡是已证实的技术。 多个供应商产品满足 FIPS 要求。

Windows Hello for Business

FIPS 140 要求包括软件、固件和硬件在内的加密边界都在评估范围之内。 Windows 操作系统可以与数千个此类组合配对。 因此,Microsoft 无法在 FIPS 140 安全级别 2 验证 Windows Hello 企业版。 在接受此服务即 AAL3 之前,联邦客户应进行风险评估并评估以下每个组件认证,作为其风险接受的一部分:

要确定符合当前标准的 TPM,请参阅 NIST 计算机安全资源中心加密模块验证计划。 在“模块名称”框中,输入“受信任的平台模块”以获取符合标准的硬件 TPM 列表。

重新身份验证

对于 AAL3,NIST 要求无论用户是否处于活动状态,均需每 12 小时重新进行身份验证。 在 15 分钟或更长时间内处于非活动状态时需要重新进行身份验证。 满足这两个因素,即需重新进行身份验证。

为了满足不考虑用户活动而重新进行身份验证的要求,Microsoft 建议将用户登录频率配置为 12 小时。

NIST 允许通过补偿控制来确认订阅者状态:

  • 将会话非活动超时设置为 15 分钟:使用 Microsoft Configuration Manager、组策略对象 (GPO) 或 Intune 在操作系统级别锁定设备。 如果订阅者要将其解锁,则需要进行本地身份验证。

  • 使用 Configuration Manager、GPO 或 Intune 运行计划任务来设置超时,而不考虑是否处于活动状态。 无论是否处于活动状态,都将在 12 小时后锁定计算机。

抵御中间人攻击

请求方与 Microsoft Entra ID 之间的通信通过经身份验证的受保护通道进行,以抵御中间人 (MitM) 攻击。 此配置满足 AAL1、AAL2 和 AAL3 对抵御 MitM 攻击的要求。

验证程序模拟抵抗

满足 AAL3 的 Microsoft Entra 身份验证方法利用加密验证器,将验证器输出与正在进行身份验证的会话绑定。 这些方法使用由请求方控制的私钥。 公钥已为验证程序所知。 此配置满足 AAL3 对验证程序模拟抵抗的要求。

验证程序泄露抵抗

所有满足 AAL3 要求的 Microsoft Entra 身份验证方法:

  • 使用加密验证器(要求验证程序存储与验证器所持有的私钥相对应的公钥)
  • 使用经 FIPS 140 验证的哈希算法存储所需的验证器输出

有关详细信息,请参阅 Microsoft Entra 数据安全注意事项

重放抵抗

满足 AAL3 要求的 Microsoft Entra 身份验证方法使用 nonce 或质询。 这些方法可以抵御重放攻击,因为验证程序可检测重放的身份验证事务。 此类事务不包含所需的 nonce 或及时性数据。

身份验证意向

要求提供身份验证意图进一步提高了在使用者不知情的情况下(例如由终结点上的恶意软件)使用直接连接的物理身份验证器(如多因素加密硬件)的难度。 满足 AAL3 的 Microsoft Entra 方法要求用户输入 PIN 或生物识别,以表明身份验证意图。

后续步骤

NIST 概述

了解 AAL

身份验证基础知识

NIST 验证器类型

使用 Microsoft Entra ID 满足 NIST AAL1 要求

使用 Microsoft Entra ID 满足 NIST AAL2 要求