I am trying to use an Azure WCF Relay to send an encrypted AS2 message to a BizTalk WCF endpoint hosted on-premises. I've confirmed that the relay is connected on the receiver side and I've been able to send it junk text-based messages and confirmed that these arrive on the receiver.
My working AS2 sender is an Azure Logic App with the AS2 encoder and an HTTP send action. This works with another real AS2 receiver provided by a third party. The message is encrypted and signed and transmitted with a content type of application/pkcs7-mime;
smime-type=enveloped-data; name=\"smime.p7m\"
and a content transfer encoding of binary
.
This yields a SOAP Fault as a response, with the fault code namespace of http://schemas.microsoft.com/netservices/2009/05/servicebus/relay
.
This pretty well confirms to me that it's the relay returning this error. Nothing at all shows up on the on-premises side. I've experimented with BasicHttpRelayBinding - which should expect SOAP - and WebHttpRelayBinding, which from my understanding, should
accept anything. Neither works.
Must the message sent to a WCF Relay be a SOAP message? If so, how would I embed this binary content in it so that it can be unpacked and processed as "normal" AS2 on the other side? Otherwise, will this ever work, or am I onto a loser here?