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 编码器管道作为每个主机实例服务帐户,并将签名证书导入 到 Current User \ Personal 存储。 | 拥有私人证书 | 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 请求证书。 |
贸易合作伙伴公共证书 | 暂无 |
-
HTTP 传输 - 在“HTTP 传输属性”对话框的“身份验证”选项卡上设置 SSL 客户端证书指纹选项。 “HTTP 传输属性”对话框通过单击“发送端口属性”对话框的“常规”页上的“配置”按钮来显示。 - SOAP 传输 - 在“SOAP 传输属性”对话框的“常规”选项卡上设置客户端证书指纹选项。 “SOAP 传输属性”对话框通过单击“发送端口属性”对话框的“常规”页上的“配置”按钮来显示。 |
显示本地计算机和当前用户的证书管理控制台界面
单击“ 开始”,单击“ 运行”,键入 MMC,然后单击“ 确定 ”以打开 Microsoft管理控制台。
单击“ 文件 ”菜单,然后单击“ 添加/删除管理单元 ”以显示 “添加/删除管理单元 ”对话框。
从可用管理单元列表中选择 “证书 ”,然后单击“ 添加”。
选择 “计算机帐户”,单击“ 下一步”,然后单击“ 完成”。 这将为本地计算机添加证书管理控制台接口。
确保从管理单元列表中仍然选择 证书,然后再次单击 添加。
选择 “我的用户帐户 ”,然后单击“ 完成”。 这将为当前用户添加证书管理控制台界面。
注释
这将显示当前登录的帐户的 证书管理控制台 。 如果需要将证书导入到服务帐户的个人存储中,则应先使用服务帐户凭据登录。
单击“添加/删除管理单元”对话框中的“确定”按钮。
一般准则
确保导入的证书用于其预期目的:为此,请双击“证书管理控制台”界面中的证书,然后单击“证书”对话框的“详细信息”选项卡。 然后单击“显示”下拉列表的“全部”选项,然后单击以选择“密钥使用情况”和/或“增强型密钥使用情况”字段来验证预期用途。 如果 BizTalk Server 尝试将证书用于其预期目的以外的其他用途,则会发生运行时错误。
测试与目标网站的连接:如果使用 SSL,请确保使用 Internet Explorer 连接到目标网站,然后再尝试使用 HTTP 或 SOAP 传输连接到目标网站。 连接到目标网站时,验证 Internet Explorer 中是否未显示任何对话框。 BizTalk Server 没有与连接到目标网站时可能显示的任何对话框进行交互的机制。 如果目标网站名称与 SSL 证书中指定的网站名称不匹配,或者 SSL 证书的根证书颁发机构不在适当的 受信任的根证书颁发机构 存储中,Internet Explorer 可能会显示对话框。
使用 SSL 诊断工具分析 SSL 连接问题: SSL 诊断工具是 IIS 诊断工具包的可选组件。 有关详细信息,请参阅 IIS 诊断工具。
确保证书有效。 如果证书已过期,BizTalk Server 不会提示你。 相反,BizTalk Server 将挂起消息。