Web服务对IP限制
如果您仅使用IP来过滤请求,则需要小心,因为这可能会被黑客欺骗。如果这需要安全,您还应该使用身份验证。
通过将规则设置为仅允许特定IP地址访问您的服务来拦截IIS级别的请求。您可以在IIS> [站点/服务名称]>属性>目录安全选项卡> IP地址和域名限制下找到它。
乔治,我可以做到这一点在webservice.asmx文件没有设置IIS,因为这个文件是我网站的一部分,我不想限制影响其他网页。感谢您的回复 – Dirk 2010-01-07 17:46:08
您可以在每个Webmethods中检查客户端IP是否正确,但正如其他人所说IP可能被欺骗或可能更改,因此使用WSE3.0实现身份验证可能是更好的选择。
[WebMethod]
public void DoSomething()
{
if(HttpContext.Current.Request.UserHostAddress == "allowed ip")
{
//Your code here
}
else
{
//Access Denied
}
}
感谢您的回复,这是我想要的。 – Dirk 2010-01-08 17:04:53
您应该将此答案标记为您接受的答案,Dirk – 2010-07-07 13:00:20
你kwow我怎么能做到这一点,因为我需要它是安全的,我能做到这一点在webservice.asmx文件,因为这个文件是我的网站的一部分,我不希望限制影响其他页面。感谢您的回复 – Dirk 2010-01-07 17:45:22
查看“改进Web服务安全性:WCF场景和实施指南”。 http://msdn.microsoft.com/en-us/library/cc949034.aspx – 2010-01-07 19:39:29
感谢您的帮助,我会查找它 – Dirk 2010-01-07 20:10:12