我正在做一个WCF项目,现在我有四个ServiceContract,
- 其中三个(例如A、B、C)可以通过http访问,端点为:mexHttpBinding/webHttpBinding
- fourht(例如D)可以通过https访问,端点:具有传输安全模式的mexHttpsBinding/webHttpBinding并且它们中的每一个都是基于REST的。该服务将在IIS 8上运行
我想实现以下目标:
-
限制从"外部"访问A、B和C(仅在本地主机上与同一服务器上的网络项目通信)
-
公开D,因为它从外部源接收数据
我读了很多关于这方面的文章和帖子(例如IPFilter、namedpipes、stackoverflow答案等),但遗憾的是,我还没有找到完美的解决方案。我认为,最好是在"服务器级别"上这样做,所以对于IIS配置,但我不知道如何使用不同的规则不同的合同/端点。
解决这个问题的最佳解决方案是什么?
我有一个类似的场景,我使用IPFilter来完成这项工作。由于您只想通过外部地址限制访问,这可能是一个很好的解决方案,它简单易实现。