证书疑难解答

Microsoft BizTalk Server可以将公钥基础结构 (PKI) 数字证书用于文档加密和解密、文档签名和验证 (不可否认) 以及参与方解析。 本主题介绍各种认证使用方案和配置选项,并提供一些有关将数字证书与BizTalk Server配合使用的一般准则。

证书使用方案和配置选项

使用具有BizTalk Server的证书时发生的大多数问题都是由于配置不正确或不完整造成的。 例如,将正确的证书导入错误的证书存储、将错误的证书导入正确的证书存储或者未能将适当的信息输入 BizTalk 管理控制台都会导致在使用证书时发生运行时错误。

使用下表作为BizTalk Server中提供的证书使用方案和配置选项的参考:

证书使用情况 用户上下文 证书存储位置 证书类型 使用的管道组件 BizTalk Server 管理控制台中的配置参数
加密(发送) 与发送处理程序相关联的主机实例使用的帐户 登录到运行BizTalk Server将托管 S/MIME 编码器管道的每台计算机,并将加密证书导入本地计算机 \其他人员存储。 贸易合作伙伴公共证书 MIME/SMIME 编码器 - 在“发送端口属性”对话框的“证书”页上指定加密证书“公用名”和“指纹”的值。
- 在“配置管道”对话框中指定管道编码选项。 单击“发送端口属性”对话框的“常规”页上的“发送管道”下拉列表旁边的按钮,即可显示“配置管道”对话框。
解密(接收) 与接收处理程序关联的主机实例使用的帐户 登录到运行BizTalk Server将 S/MIME 解码器管道作为每个主机实例服务帐户托管的计算机,并将解密证书导入到当前用户 \ 个人存储。 注意:若要在 IIS 7.0 计算机上成功进行管道解密,请确保 IIS 应用程序池的帐户与与接收处理程序关联的主机实例使用的帐户相同,并且此帐户是 machineName>\IIS_WPG 组的成员<。 有关为 IIS 7.0 设置 IIS 进程标识的详细信息,请参阅 解决 IIS 权限问题的指南。 这些进程必须以相同的帐户运行,以便确保加载的帐户配置文件还加载了在管道中执行解密所需的注册表项。 出于性能原因,IIS 6.0 在启动关联的 w3wp.exe 进程时不会加载帐户配置文件,因此必须使用同一帐户配置BizTalk Server主机实例,以便BizTalk Server加载帐户配置文件和注册表项。 私人证书 MIME/SMIME 解码器 - 在每个“主机属性”对话框的“证书”页上指定解密证书“公用名”和“指纹”的值。
- 在“配置管道”对话框中指定管道解码选项。 单击“接收位置属性”对话框的“常规”页上的“接收管道”下拉列表旁边的按钮,即可显示“配置管道”对话框。
签名(发送) 与发送处理程序相关联的主机实例使用的帐户 登录到运行 BizTalk Server将 S/MIME 编码器管道作为每个主机实例服务帐户托管的每台计算机,并将签名证书导入到当前用户 \ 个人存储。 私人证书 MIME/SMIME 编码器 - 在“BizTalk 组属性”对话框的“证书”页上指定签名证书“公用名”和“指纹”的值。 注意:每个BizTalk Server组只能指定一个签名证书。
- 在“配置管道”对话框中指定管道编码选项。 单击“发送端口属性”对话框的“常规”页上的“发送管道”下拉列表旁边的按钮,即可显示“配置管道”对话框。
签名验证(接收) 与接收处理程序关联的主机实例使用的帐户 登录到运行BizTalk Server将托管 S/MIME 解码器管道的每台计算机,并将签名证书导入本地计算机 \其他人员存储。 贸易合作伙伴公共证书 MIME/SMIME 解码器 - 在每个“参与方属性”对话框的“证书”页上指定验证证书“公用名”和“指纹”的值。
- 在“配置管道”对话框中指定管道解码选项。 单击“接收位置属性”对话框的“常规”页上的“接收管道”下拉列表旁边的按钮,即可显示“配置管道”对话框。 注意:解码 ”选项的配置要求部署具有 MIME/SMIME 解码器组件的管道。
参与方解析(接收) 与接收处理程序关联的主机实例使用的帐户 登录到正在从中配置参与方解析的BizTalk Server计算机,并将证书导入本地计算机\其他人员存储。 贸易合作伙伴公共证书 参与方解析 - 在每个“主机属性”对话框的“证书”页上指定证书“公用名”和“指纹”的值。
- 在“配置管道”对话框中指定 ResolveParty 选项。 单击“接收位置属性”对话框的“常规”页上的“接收管道”下拉列表旁边的按钮,即可显示“配置管道”对话框。 注意: 此选项的配置需要使用包含 Party 解析 组件的管道。 XMLReceive 管道包含 Party 解析组件。
HTTPS(发送) 与发送处理程序相关联的主机实例使用的帐户 SSL 通信无需客户端证书。 是否要求客户端证书由目标 Web 服务器管理员决定。 如果目标 Web 服务器要求客户端证书,则执行以下步骤:

- 从贸易合作伙伴获取公共证书。
- 作为与发送处理程序关联的主机实例使用的帐户登录到运行 BizTalk Server的每台计算机。
- 将证书导入 当前用户 \ 个人 存储。

有关如何使用 Windows Server 2008 证书服务网页获取证书的信息,请参阅 通过 Web 请求证书
贸易合作伙伴公共证书 NA - HTTP 传输 - 在“HTTP 传输属性”对话框的“身份验证”选项卡上设置 SSL 客户端证书指纹选项。 单击“发送端口属性”对话框的“常规”页上的“配置”按钮,即可显示“HTTP 传输属性”对话框。
- SOAP 传输 - 在“SOAP 传输属性”对话框的“常规”选项卡上设置客户端证书指纹选项。 单击“发送端口属性”对话框的常规”页上的“配置”按钮,即可显示“SOAP 传输属性”对话框。

显示“本地计算机”和“当前用户”的“证书管理控制台”界面

  1. 单击 “开始”,单击“ 运行”,键入 MMC,然后单击“ 确定 ”打开 Microsoft 管理控制台

  2. 单击“ 文件 ”菜单,然后单击“ 添加/删除管理单元 ”以显示“ 添加/删除管理单元 ”对话框。

  3. 从可用管理单元列表中选择 “证书 ”,然后单击“ 添加”。

  4. 选择“ 计算机帐户”,单击“ 下一步”,然后单击“ 完成”。 这将为本地计算机添加证书管理控制台接口。

  5. 确保仍从管理单元列表中选择“ 证书 ”,然后再次单击“ 添加 ”。

  6. 选择 “我的用户帐户 ”,然后单击“ 完成”。 这将为当前用户添加证书管理控制台界面。

    注意

    这将显示当前登录帐户的 证书管理控制台 。 如果您需要为某一服务帐户将证书导入个人存储,则应首先使用该服务帐户的凭据登录。

  7. 单击“添加/删除管理单元”对话框中的“确定”按钮。

一般性指导

  • 确保导入的证书用于其预期目的:为此,请在“证书管理控制台”界面中双击证书,然后单击“证书”对话框的“详细信息”选项卡。 然后单击“显示”下拉列表的“全部”选项,然后单击以选择“密钥用法”和/或“增强型密钥用法”字段,以验证预期用途。 如果BizTalk Server尝试将证书用于其预期目的以外的其他用途,则会发生运行时错误。

  • 测试与目标网站的连接:如果使用 SSL,请确保在尝试使用 HTTP 或 SOAP 传输连接到目标网站之前,可以使用 Internet Explorer 连接到目标网站。 验证连接到目标网站时 Internet Explorer 中是否未显示任何对话框。 BizTalk Server没有与连接到目标网站时可能显示的任何对话框进行交互的机制。 如果目标网站名称与 SSL 证书中为网站指定的名称不匹配,或者 SSL 证书的根证书颁发机构不在相应的 受信任根证书颁发机构 存储中,Internet Explorer 可能会显示一个对话框。

  • 使用 SSL 诊断工具来分析 SSL 连接问题: SSL 诊断工具是 IIS 诊断工具包的可选组件。 有关详细信息,请参阅 IIS 诊断工具

  • 确保证书有效。 如果证书已过期,BizTalk Server不会提示你。 相反,BizTalk Server将挂起消息。

另请参阅

加密和签名证书