0

我试图让 BizTalk 代理与 WCF 服务的通信,该服务将其一些数据映射到响应消息的标头而不是正文部分。经过研究,解决方案是将标头数据写入 OutboundCustomHeaders 消息上下文属性,然后 BizTalk WCF 适配器将其注入到传出消息中。在我使用证书启用消息级安全性之前,这非常有效。在这种情况下,标头仍然包含在响应消息中,但在消息被加密之后。这会导致接收客户端抛出 MessageSecurityException 消息“所需消息部分未加密”。

有没有办法将 BizTalk 配置为在加密发生之前写入 OutboundCustomHeaders 或以另一种方式在响应中注入我的标头?

我不确定它有多大帮助或使答案复杂化,但 BizTalk 中的接收位置使用 ws2007HttpRelayBinding 为客户端连接创建 Azure 端点。

4

1 回答 1

1

此问题的解决方案是通过创建自定义行为,将所需的标头添加到通道保护要求并将其附加到 ws2007HttpRelayBinding。

我使用以下链接作为对我的解决方案的参考:WCF 自定义消息安全

于 2013-04-23T19:23:56.497 回答