从Microsoft受信任的根中删除美国联邦通用策略 CA 证书

本文讨论在 2022 年 5 月 24 日Microsoft根证书更新中删除美国联邦通用策略 CA 根证书。 本文还提供了在 2022 年 5 月 24 日前从 Microsoft 证书信任列表(CTL)中删除联邦共同策略 CA 根证书之前,避免或解决企业尚未过渡到联邦共同政策 CA G2 根证书时发生的问题的解决方案。

注意

Microsoft根证书更新删除的根证书名为“联邦通用策略 CA”,通常称为“G1”根证书,即使证书名称中未显示“G1”。

替换“G1”根证书的根证书名为“联邦通用策略 CA G2”,通常称为“G2”根证书。

适用于: 所有版本的 Windows

简介

管理美国联邦共同政策 CA 的美国联邦 PKI (FPKI) 团队正式要求从Microsoft受信任的根计划中删除下面列出的“G1”根证书。

证书名称 SHA1 指纹
联邦共同政策 CA 905F942FD9F28F679B378180FD4F846347F645C1

依赖于“G1”根证书的应用程序和操作在收到根证书更新后,将失败 1 到 7 天。 管理员应从现有的“G1”根证书迁移到下面列出的替换“G2”根证书,作为代理的联邦信任定位点。

证书名称 SHA1 指纹
联邦共同政策 CA G2 99B4251E2EEE05D8292E8397A90165293D116028

注意

可以从“G2”根证书 crt 文件下载直接下载“G2”根证书。

潜在问题

删除“G1”根证书后,未转换为“G2”根证书的环境中的用户可能会遇到影响以下情况的问题:

  • TLS 或 SSL 连接。
  • 保护或多用途 Internet 邮件扩展(S/MIME)或安全电子邮件。
  • Microsoft Word 中的已签名文档。 (PDF 和 Adobe Acrobat 文件将不受影响。
  • 客户端身份验证,包括建立 VPN 连接。
  • 智能卡或 PIV 经过身份验证的访问,包括完全依赖于 Windows 软件的锁屏提醒访问。

以下错误消息可能显示在弹出窗口和对话框中:

  • 站点的安全证书不受信任。

  • 此网站提供的安全证书不是由受信任的 CA 颁发的。

  • 证书链已处理,但在不受信任提供程序信任的根证书中终止。

  • 证书链接错误。

  • 证书链是由不受信任的颁发机构颁发的。

  • 证书或关联的链无效。

避免这些问题的步骤

  1. 验证测试配置设置部分中的更改,以测试在更新发布日期之前从 CTL 中删除“G1”时发生的情况。
  2. 使用 测试配置设置 部分验证所有相关方案是否正常工作后,请按照生产配置中的“生产配置设置”部分中的步骤进行操作。

注意

删除“G1”根证书后,链接到“G1”根证书的 Azure SQL 或Azure App 服务等应用程序即服务方案将失败。

测试配置设置

在发布更新之前,管理员可以使用以下步骤将 Windows 注册表直接配置为最新证书更新的预发行版或暂存位置。 还可以使用组策略配置设置。 请参阅 为 GPO 配置自定义管理模板。

注意

2022 年 5 月 11 日将暂存 5 月 11 日发布的 5 月版本(包括删除“G1”根证书)。

  1. 打开 regedit,然后导航到以下注册表子项:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SystemCertificates\AuthRoot\AutoUpdate

  2. 添加或修改以下注册表值:

    • 将 RootDirUrl 设置为 http://ctldl.windowsupdate.com/msdownload/update/v3/static/trustedr/en/test.
    • SyncFromDirUrl 设置为 http://ctldl.windowsupdate.com/msdownload/update/v3/static/trustedr/en/test.
  3. 删除以下注册表值:

    • EncodedCtl
    • LastSyncTime
  4. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SystemCertificates\AuthRoot\Certificates删除子项。 此步骤将删除所有存储的根证书。

    注意

    通过从 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SystemCertificates\AuthRoot\Certificates中删除所有存储的根证书,可以确保删除所有存储的根证书。 此操作强制 Windows 下载新的根证书(如果关联公钥基础结构 (PKI) 链具有新属性(如果已修改)。 由于正在删除“G1”根证书,因此不会下载此根证书。

  5. 验证链接到“G1”根证书的所有方案,包括潜在问题中列出的 方案

注意

指向测试站点的链接永远不会更改。 但是,在测试站点上暂存的更改从月更改为月。

生产配置设置

如果使用上一部分的测试 URL,以下步骤直接将 Windows 注册表配置为使用 CTL 的生产版本:

  1. 打开 regedit,然后导航到以下注册表子项: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SystemCertificates\AuthRoot\AutoUpdate

  2. 添加或修改以下注册表值:

    • 将 RootDirUrl 设置为 http://ctldl.windowsupdate.com/msdownload/update/v3/static/trustedr/en.
    • SyncFromDirUrl 设置为 http://ctldl.windowsupdate.com/msdownload/update/v3/static/trustedr/en.
  3. 删除以下注册表值:

    • EncodedCtl
    • LastSyncTime
  4. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SystemCertificates\AuthRoot\Certificates删除注册表子项。 此步骤将删除所有存储的根证书。

配置“G2”根证书

在带外根证书更新删除“G1”根证书之前,管理员应按照以下说明配置“G2”根证书。

  1. 按照获取和验证 FCPCA 根证书中的指南在所有 Windows 工作组、成员和域控制器计算机上下载并安装“G2”根证书。
  2. 可通过多种方式将根存储部署到企业设备。 请参阅“分发到操作系统”中的“Microsoft解决方案”部分。

注意

在具有智能卡登录或 Windows 设备上的其他方案的交叉认证依赖项但无法访问 Internet 的企业中,请参阅分发中间证书的“我需要分发中间 CA 证书?”和“联邦通用策略 CA G2 颁发的证书”部分 。分发中间证书

许多联邦企业必须拥有美国财政部 CA 证书或委托托管服务 CA 证书。 这两个 CA 证书都记录在“分发 CA 证书”一文中,如下所示:

重要说明! 若要确保在 2019 年 8 月 13 日之前由 Entrust Federal SSP 颁发的 PIV 凭据证书验证到联邦通用策略 CA G2,需要向无法执行动态路径验证的系统分发额外的中间 CA 证书。 在“常见问题解答”页上了解详细信息。

获取 CTL 的手动步骤

对于不允许 Windows 设备访问Windows 更新或 Internet 的断开连接环境,请按照以下步骤手动获取 CTL:

  1. 下载 CTL:
    1. 运行 certutil -generateSSTFromWU c:\roots\trustedcerts.sst
    2. 选择 受信任的certs.sst 文件时,应打开证书管理器管理单元以显示完整的 CTL。
  2. 下载不允许的证书列表:
    1. 运行 certutil -syncwithwu c:\roots
    2. 运行 certutil -verifyctl -v c:\roots\disallowedstl.cab c:\roots\disallowedcert.sst
    3. 选择“不允许的cert.sst”时,应打开“证书管理器”管理单元以显示“不允许”列表中的所有根。
  3. 若要评估 UI 中未显示的设置,请将 SST 文件转换为文本文件。 为此,请运行 certutil -dump -gmt -v c:\roots\trustedcerts.sst > c:\roots\trustedcerts.txt
  4. “获取”下载“G2”根证书并验证 FCPCA 根证书 并将其添加到个人 CTL。

排查和分析根链接问题

以下数据可帮助你排查因删除“G1”根证书而受到影响的操作:

  1. 启用 CAPI2 日志记录。 请参阅 Windows PKI 故障排除和 CAPI2 诊断

  2. 在以下事件日志、事件源和事件 ID 事件查看器中创建筛选器。

    CAPI2 用作其源的应用程序和服务日志\Microsoft\Windows\CAPI2\Operational 日志下:

    • 事件 ID 11:此事件显示链接失败。
    • 事件 ID 30:此事件显示策略链故障,例如 NTAuth 失败和 SSL 策略检查。
    • 事件 ID 90:此事件显示用于在系统上生成所有可能的证书链的所有证书。
    • 事件 ID 40–43:此事件系列显示通过 AIA 路径访问的所有存储 CRL 和事件证书。
    • 事件 ID 50–53:此事件系列显示从网络访问 CRL 的所有尝试。 该事件与以下错误消息相关:

      已处理的证书链,但在不受信任提供程序信任的根证书中终止

    在将 Microsoft-Windows-Kerberos-Key-Distribution-Center 用作其源的系统事件日志中:

    • 错误 19:此事件指示尝试使用智能卡登录,但 KDC 无法使用 PKINIT 协议,因为缺少合适的证书。
    • 事件 21:无法将证书链生成到受信任的根机构。
    • 事件 29:密钥分发中心(KDC)找不到适合用于智能卡登录的证书,或者无法验证 KDC 证书。 如果此问题未解决,智能卡登录可能无法正常工作。 若要更正此问题,请使用Certutil.exe验证现有的 KDC 证书,或注册新的 KDC 证书。