2017-03-13 57 views
1

虽然试图通过AS2协议发送EDIFACT信息我得到在事件日志中关于签名如下条目:的BizTalk 2013 - AS2自签名

广告1)

Source: BizTalk Server EDI
Event ID: 8132
General: A BTS MIME error was encountered when attempting to encode a message. Error: Exception of type 'Microsoft.BizTalk.Component.MIMEException' was thrown., HResult:-1061152225

广告2)

Source: BizTalk Server
Event ID: 5720
General: There was a failure executing the send pipeline: "Microsoft.BizTalk.EdiInt.DefaultPipelines.AS2Send, Microsoft.BizTalk.Edi.EdiIntPipelines, Version=3.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" Source: "AS2 encoder" Send Port: "001HCC.SndPort.AS2-OW.TEST" URI: " https://ourPartner.com/receiveas22017/BTSHTTPReceive.dll " Reason: The MIME encoder failed to sign the message because the certificate has private key protection turned on or the private key does not exist. Please disable private key protection to allow BizTalk to use a certificate for signing.

广告3)

Source: BizTalk Server
Event ID: 5754
General: A message sent to adapter "HTTP" on send port "001HCC.SndPort.AS2-OW.TEST" with URI "https:// ourPartner.com/receiveas22017/BTSHTTPReceive.dll" is suspended. Error details: There was a failure executing the send pipeline: "Microsoft.BizTalk.EdiInt.DefaultPipelines.AS2Send, Microsoft.BizTalk.Edi.EdiIntPipelines, Version=3.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" Source: "AS2 encoder" Send Port: "001HCC.SndPort.AS2-OW.TEST" URI: "https:// ourPartner.com/receiveas22017/BTSHTTPReceive.dll" Reason: The MIME encoder failed to sign the message because the certificate has private key protection turned on or the private key does not exist. Please disable private key protection to allow BizTalk to use a certificate for signing.
MessageId: {A53EB31E-34B4-4489-8809-C3CF0AA4E1FD} InstanceID: {C09270AF-5A27-4449-A89B-CF6F149D7714}

广告4)

Source: XLANG/s
Event ID: 10001
General: xlang/s engine event log entry: Failed while creating a qbq.quibis.Generic.Processes.AcknowledgementGenerator service.

Exception type: ServiceCreationException The following is a stack trace that identifies the location where the exception occured at Microsoft.BizTalk.XLANGs.BTXEngine.BTXSession._serviceCreator(Guid& instanceId, Object objCurrMsg) at Microsoft.XLANGs.Core.ResourceContainer._allocateResource(Guid& key, UInt32 hashKey, ResourceCreator resCreator, Object creationContext) at Microsoft.XLANGs.Core.ResourceContainer.Dispense(Guid& key, ResourceCreator resCreator, Object creationContext) at Microsoft.BizTalk.XLANGs.BTXEngine.BTXSession._dispenseService(Guid& instanceId, IBTMessage currMsg) at Microsoft.BizTalk.XLANGs.BTXEngine.BTXSession._tryReceiveOneMessage(Boolean& loggedError, Guid& instanceId, IBTMessage currMsg) at Microsoft.BizTalk.XLANGs.BTXEngine.BTXSession._receiveOneMessage(Guid& instanceId, Guid& serviceId, IBTMessage currentMsg) at Microsoft.BizTalk.XLANGs.BTXEngine.BTXSession.ReceiveMessages(IBTMessage[] messages, Int32 firstIdx, Int32 count) at Microsoft.BizTalk.XLANGs.BTXEngine.AppDomains.AppDomainRoot.Microsoft.XLANGs.BizTalk.ProcessInterface.IAppDomainStub.ReceiveMessages(Object objMsg) at Microsoft.XLANGs.BizTalk.CrossProcess.AppDomainStubProxy.Microsoft.XLANGs.BizTalk.ProcessInterface.IAppDomainStub.ReceiveMessages(Object msgs) Additional error information: Could not load file or assembly 'qbq.quibis.Generic.Processes, Version=1.0.0.0, Culture=neutral, PublicKeyToken=d7f6a42d27d4b3ed' or one of its dependencies. The system cannot find the file specified.

Exception type: FileNotFoundException
Source: mscorlib
Target Site: Void GetTypeByName(System.String, Boolean, Boolean, Boolean, System.Runtime.CompilerServices.StackCrawlMarkHandle, IntPtr, Boolean, System.Runtime.CompilerServices.ObjectHandleOnStack) The following is a stack trace that identifies the location where the exception occured at System.RuntimeTypeHandle.GetTypeByName(String name, Boolean throwOnError, Boolean ignoreCase, Boolean reflectionOnly, StackCrawlMarkHandle stackMark, IntPtr pPrivHostBinder, Boolean loadTypeFromPartialName, ObjectHandleOnStack type) at System.RuntimeTypeHandle.GetTypeByName(String name, Boolean throwOnError, Boolean ignoreCase, Boolean reflectionOnly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean loadTypeFromPartialName) at System.RuntimeType.GetType(String typeName, Boolean throwOnError, Boolean ignoreCase, Boolean reflectionOnly, StackCrawlMark& stackMark) at System.Type.GetType(String typeName, Boolean throwOnError) at Microsoft.BizTalk.XLANGs.BTXEngine.BTXServiceStaticState.Resolve() at Microsoft.BizTalk.XLANGs.BTXEngine.BTXSession._createNewService(Guid& serviceId, Guid& instanceId, BTXServiceStaticState staticState) at Microsoft.BizTalk.XLANGs.BTXEngine.BTXSession._createOrRehydrateRealService(Guid& instanceId, IBTMessage currMsg)

消息从一个发送到另一个服务器上的测试环境。

第一个环境由Windows Server 2012 R2 64x,IIS7,BizTalk v。3.11.266.2,最后一个Adapter Pack R2 CU4(KB 3167705)组成。另一个由Windows Server 2008 R2 64x,IIS7,BizTalk v。3.10.350.2,最后一个Adapter Pack CU4(KB 3185629)组成。

应用程序池IIS设置在IIS上启用32位,加载用户配置文件:True。这些消息使用Party发送,其中包括在Windows Server 2008中使用SHA256生成的SelfSigned证书V3。在导入强证书保护功能时,已关闭了以下设置:本地安全策略>本地策略>安全选项>系统加密:强制存储在计算机上的用户密钥的强密钥保护>不需要用户输入(... )

是否有可能找到这些错误信息的原因?你能提出一些可以帮助我解决问题的指导方针吗?

回答

0

问题是:“MIME编码器未能签名,因为证书已打开私钥保护或私钥不存在。请禁用私钥保护以允许BizTalk使用证书进行签名。”

导入私钥时会出现一个复选框,提示“需要密码”。这一定不能被检查。

+0

“虽然导入强证书保护被关闭......” 此复选框未被选中。 – LoginName

0

这可能是因为您没有私人证书设置。您需要创建证书并获取私钥和​​公钥。将公钥发送给您的贸易伙伴。您可以使用OpenSSL来创建您的证书。