在代理,防火墙后面托管WCF服务

时间:2009-08-26 13:03:39

标签: wcf http proxy firewall

我们使用net.tcp创建了一个WCF,期望该服务可以在只接受HTTP端口的防火墙中工作。防火墙后面的客户端也可以访问它。

我们是否需要在静态公共IP上托管服务,以便来自任何网络的任何客户端都可以与之相连?

理想情况下,我们希望在防火墙后面的节点(例如192.168.0.199)上托管服务,以便其他网络上的客户端可以连接到它。

请建议。

2 个答案:

答案 0 :(得分:2)

嗯,要么您需要以某种方式公开显示服务 - 使用公共IP,或者将公司防火墙上公开可见的IP路由到内部服务器。但是 - 它需要以某种方式公开显示。

另一种选择是将其连接到Windows Azure Service Bus - 在这种情况下,您可以将其保留在防火墙后面,并在云中建立一个公开可见的IP,然后将流量路由到你的网络服务器。

马克

答案 1 :(得分:1)

我可能不在此,但WCF客户端应该没有与防火墙后面的WCF服务器通信的问题。甚至应用程序级别的防火墙在这种情况下也可以,只要您将它们配置为不检查过去的第4层。不要在防火墙上对您的流量进行身份验证或执行任何操作 - 只需将其NAT到内部IP地址即可,您应该没问题。

一些注意事项:对于这个观察者来说,传输安全性可能会好一些,但WCF中的传输和消息级安全性应该可以通过防火墙正常运行。如果您需要消息流,那么您将陷入传输级安全性。

如果您的防火墙(或其中一个防火墙)恰好是Microsoft ISA或TMG类型设备,您可能会发现这有用:http://www.run-corp.com/how-to-configure-wcf-application-on-microsoft-isa-tmg-firewall/