限制WCF服务只响应一个域请求
本文关键字:一个 请求 WCF 服务 响应 限制 | 更新日期: 2023-09-27 18:12:57
我创建了一个WCF服务并将其托管在Internet上。
我想从somename1.com
和一些静态ip中消耗它。
我们能不能让WCF只响应somename1.com
域(或多个特定域)或静态ip
http://forums.asp.net/t/1598209.aspx:
中的以下配置如何?<endpoint address="" binding="wsHttpBinding" contract="IMyTestService">
<identity>
<dns value="ip address or domain name" />
</identity>
</endpoint>
是的,这可以通过让您的服务端点使用消息过滤器来实现。
这是一篇深入的代码项目文章,一步一步地介绍如何在WCF中制作IP过滤器。下面是一个使用它的例子,一旦你写了IPFilter类
<?xml version="1.0" encoding="utf-8" ?>
<!-- Example configuration -->
<configuration>
<configSections>
<section name="IPFilter"
type="IPFilter.Configuration.IPFilterConfiguration,IPFilter"/>
</configSections>
<IPFilter>
<HttpModule FilterName="Default" />
<Filters>
<add Name="Default" DefaultBehavior="Deny">
<deny hosts="192.168.11.12,192.168.1.*" />
<allow hosts="192.168.0.0/16" />
<deny hosts="*" />
</add>
</Filters>
</IPFilter>
</configuration>