我需要保护我的 WCF Web 服务,并且正在考虑最好的方法是什么。它不是真正的角色/用户情况 - 更多的是“谁可以调用网络服务”。
我在想我可以使用IP吗?这是推荐的方式吗?
任何人都有这方面的经验,我想有一个表(sql),其中包含可以访问 Web 服务的所有 IP,但如果已经存在某些东西,我不想重新发明轮子。
我认为当有人访问网络服务时会发生事件或类似事件,所以我可以检查那里的 IP?- 有人举个例子吗?
我认为这可以通过标准 HTTP 绑定来完成?
我将不胜感激任何人的任何意见
我需要保护我的 WCF Web 服务,并且正在考虑最好的方法是什么。它不是真正的角色/用户情况 - 更多的是“谁可以调用网络服务”。
我在想我可以使用IP吗?这是推荐的方式吗?
任何人都有这方面的经验,我想有一个表(sql),其中包含可以访问 Web 服务的所有 IP,但如果已经存在某些东西,我不想重新发明轮子。
我认为当有人访问网络服务时会发生事件或类似事件,所以我可以检查那里的 IP?- 有人举个例子吗?
我认为这可以通过标准 HTTP 绑定来完成?
我将不胜感激任何人的任何意见
您可以使用服务行为非常轻松地限制服务中的调用 IP。
有一篇很棒的CodeProject 文章,包括显示如何执行此操作的源代码。由于它是 WCF 和 WCF 行为,因此它也是可插入的 - 您可以根据需要在服务中添加或删除它。
马克
真的取决于服务的安全级别。IP 地址本身很容易被知识渊博的调用者欺骗,所以如果它是一个处理敏感信息的服务,我会推荐一些更难破解的东西,比如带有客户端证书的传输安全性(例如 SSL)。WCF 很好地支持并且不像您想象的那样可怕或使用起来昂贵,特别是如果您同时控制客户端和服务器(这样您可以将客户端配置为忽略证书的“受信任”状态,因此您不必购买商业服务器证书)。