在运行 IIS 的计算机上配置中间证书进行服务器身份验证

本文介绍如何在运行 IIS 的计算机上配置中间证书,以便进行服务器身份验证。

原始产品版本: Internet 信息服务
原始 KB 编号: 954755

摘要

当客户端计算机尝试与 IIS Web 服务器建立服务器身份验证的安全套接字层 (SSL) 连接时,它会验证服务器证书链。 若要成功完成此证书验证,必须在服务器上正确配置服务器证书链中的中间证书。 否则,服务器身份验证可能会失败。 它还适用于使用 SSL 或传输层安全性 (TLS) 进行身份验证的任何程序。

影响

客户端计算机无法连接到运行 IIS 的服务器。 由于服务器未正确配置中间证书,因此客户端计算机无法对这些服务器进行身份验证。

建议在服务器上正确配置中间证书。

技术详细信息

X.509 证书验证由多个阶段组成,包括证书路径发现和路径验证。

在证书路径发现过程中,必须找到中间证书才能将证书路径生成到受信任的根证书。 中间证书可用于确定证书最终是否由有效的根证书颁发机构 (CA) 颁发。 可以从客户端计算机上的缓存或证书存储中获取这些证书。 服务器还可以向客户端计算机提供信息。

在 SSL 协商中,在客户端上验证服务器证书。 在这种情况下,服务器向客户端计算机提供证书,以及客户端计算机用于生成证书路径的中间颁发证书。 完整的证书链(根证书除外)将发送到客户端计算机。

已配置服务器身份验证证书的证书链是在本地计算机上下文中生成的。 通过这种方式,IIS 确定它发送到客户端的 TLS/SSL 证书集。 若要正确配置中间证书,请将它们添加到服务器上的本地计算机帐户中的中间 CA 证书存储中。

假设服务器操作员将 SSL 证书与相关的颁发 CA 证书一起安装。 以后续订 SSL 证书时,服务器操作员必须确保同时更新中间颁发证书。

配置中间证书

  1. 打开证书 Microsoft 管理控制台 (MMC) 管理单元。 要执行此操作,请执行以下步骤:
    1. 在命令提示符下,键入 Mmc.exe
    2. 如果未以内置管理员身份运行程序,系统会提示你提供运行程序的权限。 在“Windows 安全中心”对话框中,单击“允许”。
    3. 在“ 文件 ”菜单上,选择“ 添加/删除管理单元”。
    4. “添加或删除管理单元”对话框中,选择“可用管理单元”列表中的“证书”管理单元。 然后选择“ 添加>确定”。
    5. 在“ 证书管理单元 ”对话框中,选择“ 计算机帐户”,然后选择“ 下一步”。
    6. “选择计算机 ”对话框中,选择“ 完成”。
    7. “添加或删除管理单元 ”对话框中,选择“ 确定”。
  2. 若要添加中间证书,请执行以下步骤:
    1. 在“证书 MMC”管理单元中,展开“ 证书”,右键单击“ 中间证书颁发机构”,指向“ 所有任务”,然后选择“ 导入”。
    2. “证书导入向导”中,选择“ 下一步”。
    3. 在“ 要导入的文件 ”页的“文件名”框中键入要导入的证书 的文件名 。 然后选择“下一步”。
    4. 选择“ 下一步”,然后完成 “证书导入向导”。

References

有关函数如何 CryptoAPI 生成证书链和验证吊销状态的详细信息,请访问 排查证书状态和吊销问题