为 AS2 配置证书
为了帮助使用加密和数字签名保护 AS2 数据传输,除了BizTalk Server上的相应 AS2 配置外,还必须安装相应的证书。 本主题介绍所需证书、证书的配置方式以及有关证书的常见问题。
先决条件
必须以 BizTalk Server Administrators 组成员的身份登录。
AS2 传输所需的证书
为了帮助确保 AS2 数据传输的安全,您必须将适当的证书添加到相应的证书存储区中,并将这些证书与相应的 BizTalk 项目关联。 使用以下证书可帮助确保 AS2 消息的安全:
证书使用情况 | 证书类型 | 管道组件 | 用户上下文 | 证书存储区 | 定义位置 |
---|---|---|---|---|---|
签名(出站) | 自己的私钥 (.pfx) | AS2 编码器 | 与发送处理程序相关联的主机实例使用的帐户。 | 将 AS2 编码器管道托管为每个主机实例服务帐户的每个BizTalk Server的当前用户/个人存储 |
- “组属性”对话框的“证书”页。 发送已签名的文档时使用的默认签名证书。 - 可以替代默认证书设置,并改用不同参与方的不同证书。 为此,可以在“协议属性”对话框的单向协议选项卡的“签名证书”页中选择“替代组签名证书”,并指定签名证书。 如果设置了此属性,则无论哪个 AS2 消息解析为协议,都将使用 “签名证书 ”页中提供的证书进行签名,而不是使用作为 BizTalk 组属性一部分提供的证书进行签名。 |
签名验证(入站) | 贸易合作伙伴的公钥 (.cer) | AS2 解码器 | 与接收处理程序关联的主机实例使用的帐户。 | 本地计算机\将 AS2 解码器管道托管为每个主机实例服务帐户的每个BizTalk Server的其他人员存储 | “参与方属性”对话框的“证书”页 注意:用于验证参与方签名的证书必须与用于验证其他参与方的签名的证书中唯一。 |
加密(出站) | 贸易合作伙伴的公钥 (.cer) | AS2 编码器 | 与发送处理程序相关联的主机实例使用的帐户。 | 本地计算机\承载 AS2 编码器管道的每个BizTalk Server的其他人员存储 | “发送端口属性”对话框的“证书”页 |
解密(入站) | 自己的私钥 (.pfx) | AS2 解码器 | 与接收处理程序关联的主机实例使用的帐户。 | 将 AS2 解码器管道托管为每个主机实例服务帐户的每个BizTalk Server的当前用户/个人存储 | AS2 解码器将根据消息中的证书信息确定证书。 对于 BizTalk MIME 解码器,证书必须位于用于接收消息的主机的 “证书 ”页中。 对于 AS2 解码器,则不一定是这样。 |
传出消息的证书签名
使用定义为 BizTalk 组属性一部分的默认证书,签名传出 AS2 消息。 但是,存在这样的情形,接收消息的参与方希望使用自己提供的私人证书签名消息,或签名传出消息时使用不同的证书。 如果在“协议属性”对话框的单向协议选项卡的“签名证书”页中选择“替代组签名证书”,并指定签名证书,则会启用使用其他证书对传出消息进行签名的方案。 如果证书指定为参与方 AS2 协议的一部分,则该证书用于签名传出消息。 如果无为参与方定义的证书,则使用指定为 BizTalk 组属性一部分的默认证书。
将证书添加到证书存储
有关详细信息,请参阅 安装 WCF 适配器的证书的“显示证书管理控制台”部分,以及 证书向导实用工具 主题。
重要
只有在为登录凭据与主机实例关联的用户加载了用户配置文件时,个人证书存储区才可用于消息处理。 个人存储区用于签名证书和解密证书(用户自己的私钥)。 默认情况下,将为进程内主机实例加载用户配置文件;但默认情况下不会为独立主机实例加载用户配置文件。 您可以通过应用程序为独立主机加载用户配置文件。 另外,也可以通过对进程内主机实例和独立主机实例使用相同的登录名来解决此问题。
生成证书
证书可以从证书颁发机构 (CA) 获得;但是 CA 间请求证书的步骤不同。 在提交任何证书请求之前,请查阅证书颁发机构的网站上提供的信息。
重要
用于 AS2 传输的证书必须具有实现其用途所需的属性。 若要进行签名和签名验证,证书的 “密钥用法” 属性必须为 “数字签名”。 对于加密和解密,证书的 “密钥使用情况” 属性必须为 “数据加密 ”或 “密钥加密”。 可以通过双击证书、单击“证书”对话框中的“详细信息”选项卡并选中“密钥用法”字段来验证密钥使用情况属性。
您还可以使用证书服务在 Windows Server 2008 中生成证书,但是您的参与方可能只能接受这些证书用于测试目的,因为其是自签名的,而不是公共 CA 签名。
配置用于对传出 AS2 消息进行签名的证书
在“BizTalk Server管理控制台”中,右键单击“BizTalk 组”节点,然后单击“属性”。
在“ 组属性 ”对话框的控制台树中,单击“ 证书”。
在“ 证书 ”窗格中,单击“ 浏览”,找到要用于签名的证书,然后单击“ 确定”。
注意
不用输入证书的公用名,可以只输入其指纹。 可以通过以下方式获取指纹:双击 MMC 或文件系统中的证书存储中的证书,单击“ 详细信息 ”选项卡,单击“ 指纹” 字段,然后复制指纹。
单击 “确定” 。
配置用于签署特定参与方传出 AS2 消息的证书
在“BizTalk Server管理控制台”中,单击“参与方”节点。 在“ 参与方和业务配置文件 ”窗格中的“ 协议 ”部分中,右键单击为与特定参与方交换消息而创建的协议,然后单击“ 属性”。
在单向协议选项卡上,单击“ 签名证书”。
选中“替代组签名证书检查”框,以使用此页中提供的证书对传出 AS2 消息和 MDN 进行签名。
单击“ 浏览 ”以显示“ 选择证书 ”对话框,可在其中选择要应用于此方传输的消息的签名证书。
“ 公用名” 文本框显示所选证书的说明。
指纹文本框显示证书的指纹。 证书指纹的格式为 HHHHH HHH HHH HHH HHH HHH,其中 H 是十六进制数字, (0 到 9 的数字或 A 到 F) 的字母。
单击“ 删除证书 ”以删除所选证书。
单击“ 确定 ”验证更改,然后关闭对话框。
配置用于验证传入 AS2 消息的数字签名的证书
在BizTalk Server管理控制台中,打开 BizTalk 组节点,然后单击“参与方”节点。
在“ 参与方和业务配置文件 ”窗格中,右键单击将从中接收已签名邮件的参与方,然后单击“ 属性”。
在控制台树中,单击“ 证书”。
在“ 证书 ”窗格中,单击“ 浏览”,找到要用于验证数字签名的证书,然后单击“ 确定”。
注意
不用输入证书的公用名,可以只输入其指纹。 可以通过以下方式获取指纹:双击 MMC 或文件系统中的证书存储中的证书,单击“ 详细信息 ”选项卡,单击“ 指纹” 字段,然后复制指纹。
单击 “确定” 。
配置用于对传出 AS2 消息进行加密的证书
在BizTalk Server管理控制台中,打开 BizTalk 组节点,打开“应用程序”节点,然后打开包含发送加密消息的发送端口的应用程序节点。
打开 “发送端口” 节点,右键单击发送端口,然后单击“ 属性”。
在控制台树中,单击“ 证书”。
在“ 证书 ”窗格中,单击“ 浏览”,找到要用于加密的证书,然后单击“ 确定”。
注意
不用输入证书的公用名,可以只输入其指纹。 可以通过以下方式获取指纹:双击 MMC 或文件系统中的证书存储中的证书,单击“ 详细信息 ”选项卡,单击“ 指纹” 字段,然后复制指纹。
单击“确定”。