AS2解密问题BizTalk AS2

时间:2014-04-29 10:57:46

标签: ssl encryption biztalk

我目前正在开发AS / 2实现(我的第一个BizTalk项目),我面临着证书问题。我已经检查了很多网站,博客,MSDN,直到现在,我还没有开始工作。

以下是该方案: 从特定合作伙伴,我需要收到AS / 2加密消息。

以下是我测试的方法: - 我有我的本地计算机和服务器都运行BizTalk 2013。 - 我使用OpenSSL生成了1个证书(DES3 2048位)。

证书安装如下:

发送机器:本地计算机\其他人(我的CER文件)。 发送计算机:本地计算机\受信任的根证书颁发机构(我的CER文件) - 使证书可信。 接收机器:当前用户\个人存储(我的PFX文件) - 注意:当前用户是运行BizTalk的进程内主机实例的用户。 接收机器:当前用户\个人存储(我的PFX文件) - 使证书可信。 - 注意:当前用户是运行BizTalk的进程内主机实例的用户。

在IIS中,运行BTSHttpReceive.dll的应用程序池在ApplicationPoolIdentity下运行。

最后,这是BizTalk配置:

(发送分包者):

  • 发送端口 - >证书:领取证件(CER)。
  • Pary协议(发送合作伙伴 - >接收合作伙伴) - >验证:“应选择加密消息”,加密算法设置为DES3。

    (接收伙伴):

  • 主机(BizTalkServerApplication) - >证书:我的证书(PFX)。

  • 派对协议(Sendingp合作伙伴 - >接收合作伙伴) - >验证:“应选择加密消息”,并将加密算法设置为DES3。

当我尝试从发送计算机向接收计算机发送消息(只有一行文本文件)时,接收计算机在BizTalk事件查看器中生成两个错误:

错误讯息1:

AS2解码器在处理过程中遇到异常。消息和异常的详细信息如下:AS2-From:“AS2-xxx”AS2-To:“AS2-xxx”MessageID:“”MessageType:“unknown”异常:“解密AS2消息时发生错误。”

错误消息2:

接收位置“xxx”上带有URI“/BTSHttpReceive.dll”的适配器“HTTP”收到的消息被暂停。  错误详细信息:接收管道中的组件“Microsoft.BizTalk.EdiInt.PipelineComponents”的输出消息“Microsoft.BizTalk.EdiInt.DefaultPipelines.AS2Receive,Microsoft.BizTalk.Edi.EdiIntPipelines,Version = 3.0.1.0,Culture = neutral, PublicKeyToken = 31bf3856ad364e35“由于以下错误而被暂停:      解密AS2消息时发生错误。  挂起的消息的序列号是2.
 消息ID:{BFE72958-E968-4FF6-B7DA-EB31340D81F6}  InstanceID:{B2B08761-4403-44AE-A788-D487F94CC270}

这是我已经检查过的内容:

我看到的序列号或证书可能会导致问题:

发送计算机证书序列号:00 8a 42 09 ee af c2 29 b1 接收计算机证书序列号:00 8a 42 09 ee af c2 29 b1

我希望有人可以指出我正确的方向,因为我正在寻找这个问题的日子。

亲切的问候,

1 个答案:

答案 0 :(得分:3)

感谢您的回复,但我必须说我已成功找到问题。似乎解密证书应该作为BizTalk独立主机进程用户帐户注册。

无论如何,这解决了我的问题。