可能重复:
将 WCF 服务访问限制为仅本地主机
我为 .NET 项目设置了 WCF 方法。
我可以让端点在 https 和/或 http 上工作。
但是,我只希望 HTTP 版本 ( bindingConfiguration="webBinding"
) 在 localhost 上工作。有没有办法在 web.config 中限制这一点?
我的成功设置非常有限,<endpoint address="localhost/"myproj/mysvc.svc" />
但最终没有奏效。
可能重复:
将 WCF 服务访问限制为仅本地主机
我为 .NET 项目设置了 WCF 方法。
我可以让端点在 https 和/或 http 上工作。
但是,我只希望 HTTP 版本 ( bindingConfiguration="webBinding"
) 在 localhost 上工作。有没有办法在 web.config 中限制这一点?
我的成功设置非常有限,<endpoint address="localhost/"myproj/mysvc.svc" />
但最终没有奏效。
尝试将BasicHttpBinding.HostNameComparisonMode 属性设置 为 HostNameComparisonMode.Exact
.
或在配置文件中..
<bindings>
<basicHttpBinding>
<binding name="Binding1"
hostNameComparisonMode ="Exact">
<security mode="None" />
</binding>
</basicHttpBinding>
</bindings>
但更好的是使用命名管道绑定,它应该支持您正在使用的任何消息交换模式(它支持请求-响应,以及 WS 支持的相同并发和会话状态模式)。
来自 MSDN 标题为“选择传输”的部分
希望这有帮助..