将 EAP-TLS 或 PEAP 与 EAP-TLS 配合使用时,证书要求
将可扩展身份验证协议传输层安全性(EAP-TLS)或受保护的可扩展身份验证协议(PEAP)与 EAP-TLS 配合使用时,客户端和服务器证书必须满足某些要求。
适用于: Windows 11、Windows 10
原始 KB 数: 814394
总结
将 EAP 用于强 EAP 类型(例如具有智能卡的 TLS)或证书的 TLS 时,客户端和服务器都使用证书来验证彼此的标识。 证书必须满足服务器和客户端上的特定要求才能成功进行身份验证。
证书必须在与证书使用匹配的扩展密钥用法(EKU)扩展中配置一个或多个用途。 例如,必须使用客户端身份验证目的来配置用于向服务器进行身份验证的证书。 或者,用于对服务器进行身份验证的证书必须配置为服务器 身份验证 目的。 当证书用于身份验证时,验证器会检查客户端证书,并在 EKU 扩展中查找正确的用途对象标识符(OID)。 例如,用于客户端身份验证的 OID 是1.3.6.1.5.5.7.3.2
,服务器身份验证的 OID 是1.3.6.1.5.5.7.3.1
。
最低证书要求
用于网络访问身份验证的所有证书都必须满足 X.509 证书的要求。 它们还必须满足使用安全套接字层(SSL)加密和传输级别安全性(TLS)加密的连接的要求。 满足这些最低要求后,客户端证书和服务器证书必须满足以下额外要求。
客户端证书要求
使用 EAP-TLS 或 PEAP 和 EAP-TLS 时,服务器在证书满足以下要求时接受客户端的身份验证:
客户端证书由企业证书颁发机构(CA)颁发。 或者,它映射到 Active Directory 目录服务中的用户帐户或计算机帐户。
客户端上的用户或计算机证书链接到受信任的根 CA。
客户端上的用户或计算机证书包括 客户端身份验证 目的。
用户或计算机证书不会对 CryptoAPI 证书存储执行的任何检查失败。 证书通过远程访问策略中的要求。
用户或计算机证书不会失败在网络策略服务器 (NPS) 远程访问策略中指定的任何证书 OID 检查。
802.1X 客户端不使用基于注册表的证书,这些证书是智能卡证书或使用密码保护的证书。
证书中的使用者可选名称(SubjectAltName)扩展包含用户的用户主体名称(UPN)。
当客户端将 EAP-TLS 或 PEAP 与 EAP-TLS 身份验证配合使用时,证书管理单元中会显示所有已安装证书的列表,但有以下例外:
- 无线客户端不显示基于注册表的证书和智能卡登录证书。
- 无线客户端和虚拟专用网络(VPN)客户端不显示使用密码保护的证书。
- 不会显示 EKU 扩展中不包含 客户端身份验证 目的的证书。
服务器证书要求
可以使用“验证服务器证书”选项将客户端配置为验证服务器证书。 此选项位于 “网络连接”属性的“身份验证 ”选项卡上。 当客户端使用 PEAP-EAP-MS-质询握手身份验证协议(CHAP)版本 2 身份验证、带有 EAP-TLS 身份验证的 PEAP 或 EAP-TLS 身份验证时,客户端在证书满足以下要求时接受服务器的证书:
服务器上的计算机证书链接到以下 CA 之一:
受信任的Microsoft根 CA。
Active Directory 域中具有包含已发布根证书的 NTAuthCertificates 存储区的独立根或第三方根 CA Microsoft。 有关如何导入第三方 CA 证书的详细信息,请参阅 如何将第三方证书颁发机构(CA)证书导入企业 NTAuth 存储中。
NPS 或 VPN 服务器计算机证书配置为使用 服务器身份验证 目的。 服务器身份验证的 OID 为
1.3.6.1.5.5.7.3.1
。计算机证书不会对 CryptoAPI 证书存储执行的任何检查失败。 它不会在远程访问策略中失败任何要求。
服务器证书的使用者行中的名称与在客户端上为连接配置的名称匹配。
对于无线客户端,使用者可选名称(SubjectAltName)扩展包含服务器的完全限定域名(FQDN)。
如果客户端配置为信任具有特定名称的服务器证书,系统会提示用户决定信任具有不同名称的证书。 如果用户拒绝证书,身份验证将失败。 如果用户接受证书,则会将证书添加到本地计算机受信任的根证书存储中。
注意
使用 PEAP 或 EAP-TLS 身份验证,服务器会显示证书管理单元中所有已安装证书的列表。 但是,不会显示 EKU 扩展中包含服务器身份验证目的的证书。