WCF通过HTTPS - >代理 - > HTTP

时间:2013-06-25 11:06:10

标签: wcf web-services ssl https proxy

我们有一个解决方案,一方面是WCF网络服务,另一方面是智能客户端。

通常,我们在Web服务器上为Web服务设置HTTPS,以便客户端和服务器之间的通信通过HTTPS进行。

然而,我们的一位客户之间有一个代理服务器,用于从SSL负载中剥离传入的HTTPS请求,并将纯HTTP请求转发到网络服务器:

客户> HTTPS>代理> HTTP>网络服务器

问题是我们正在使用WsHttpBinding来允许我们通过SSL与WCF通信。通常我们在客户端和服务器上使用该绑定,并且没有问题。

但是由于webservice实际上收到了HTTP请求,我们不能使用WsHttpBinding(需要HTTPS)。但我们必须使用客户端的HTTPS。

但是,当然,WCF要求客户端和服务器之间的绑定匹配。所以我们有点卡住了,我找不到解决这个问题的好方法:

  • 出于安全原因,我们无法将客户端设置为使用HTTP
  • 我们可以将服务设置为接受HTTP请求,但客户端无法与之通信。

是否有某种设置可以满足此要求?

1 个答案:

答案 0 :(得分:0)

使用wcf binding converter从wshttpbinding获取自定义绑定。然后将自定义绑定从https更改为http元素。