BTARN 发送管道
Microsoft BizTalk Accelerator for RosettaNet (BTARN) 准备一个 RosettaNet 实现框架 (RNIF) 消息,以便在 RNIFSend 管道中传输 (RNIFSend.btp) 。 发送管道包括以下内容:
XML 预处理器
XML 组装器
多用途 Internet 邮件扩展/安全多用途 Internet 邮件扩展 (MIME/SMIME) 编码器
XML 预处理器
XML 预处理器向消息添加 DOCTYPE 标头。 标头标识与消息关联的 DTD) 架构 (文档类型定义。 RNIF 规范要求存在用于 RNIF 传输的 DOCTYPE 标头。
XML 汇编程序
XML 汇编程序基于BizTalk Server XML 汇编程序。 它将消息上下文中的属性传输回信封和文档。 它从其 XML 部件和附件中组合消息。 它不执行消息验证。
有关本机BizTalk Server XML 汇编程序的详细信息,请参阅BizTalk Server帮助中的“XML 汇编程序管道组件”。
MIME/SMIME 编码器
MIME/SMIME 编码器基于 MIME/SMIME 编码器BizTalk Server。 根据贸易合作伙伴协议中的协议设置以及BizTalk Server MIME/SMIME 编码器的设置,BTARN 编码器将执行以下操作:
根据 RNIF 1.1 消息的要求,向消息添加一个 8 字节二进制标头。
对消息部分进行编码,并计算摘要。
加密有效负载 (服务内容加附件) ,或有效负载容器 (服务内容加服务标头加附件) 。 如果已将贸易合作伙伴协议的“协议”选项卡上的“编码所有端口”设置设置为
False
,则编码器将仅加密有效负载。 如果已将 “编码所有端口 ”设置设置为True
,则编码器将加密有效负载容器。有关本机BizTalk Server MIME/SMIME 编码器的详细信息,请参阅BizTalk Server帮助中的“MIME/SMIME 编码器管道组件”。
消息流
通过 BTARN 发送管道的消息流如下所示:
如果已将贸易合作伙伴协议的 “编码所有部件 ”设置设置为
True
,则 MIME/SMIME 编码器将对所有消息部分进行编码。 它将使用协议的 属性中Encoding
设置的编码方法。对于 RNIF 2.01,如果邮件是操作邮件并且有附件,则编码器将为每个附件执行以下操作:
如果附件是二进制的,则编码器将对其进行编码。
编码器将为附件生成内容 ID。
编码器将为附件创建 MIME 部件。
对于 RNIF 2.01,管道将加密消息部分并生成 RNIF 消息,具体取决于进程配置设置) 中设置的“ 需要持久性机密性 ” (:
如果已将“ 需要持久机密性 ”设置为 “有效负载”,编码器将加密服务内容和附件。 然后,汇编程序将添加服务标头、传递标头和前言,以构造最终的 RNIF 消息。
如果已将“ 需要持久机密性 ”设置为 “有效负载容器”,编码器将加密服务标头、服务内容和附件。 然后,汇编程序将添加传递标头和前言,以构造最终的 RNIF 消息。
如果已将 “需要持久机密性 ”设置为 “无”,则汇编程序会将服务标头、传递标头和前言添加到服务内容和附件 (,而无需加密) 来构造最终的 RNIF 消息。
对于 RNIF 1.1,汇编程序将在不加密的情况下构造最终的 RNIF 消息。
在以下情况下,编码器将对消息进行签名:
该消息是一条信号消息,进程配置设置中 (不可 否认的必需 属性) 为
True
。该消息是操作消息,进程配置设置中的 “源不可否认”和“内容” 属性 () 为
True
。
对于 RNIF 2.01,编码器将在 MIME 消息的第一个正文部分计算摘要,并保留摘要。 它将使用贸易合作伙伴协议中方法属性中
Digest
设置的方法计算摘要, (SHA-1 或 MD5) 。