防止跨域请求到我的wcf服务

ama*_*eur 5 c# security wcf cross-domain

我使用wcf ui服务在我的javacsript(jquery)和服务器端代码之间进行通信.我发现这项工作有效.

但是我想让它更安全.我可以设置wcf,以便只能在同一域内对服务发出请求,以防止外部客户端向我的服务发出此类请求.

例如,我的服务运营网址是http://www.website.com/Service.svc/GetProducts.我想设置wcf,以便只允许来自http://www.website.com中页面的请求.我认为这是跨域wcf请求的领域,但需要一些帮助来设置它.帮助会很棒.

Ste*_*eve 5

如果您的服务暴露在网络上,这根本不可能实现.

如果您的服务有些不够安全,那么您应该考虑解决这个问题 - 而不是试图阻止人们提出请求.

任何人都可以使用像Fiddler,Charles等调试代理或者像WireShark这样的工具将他们想要的任何数据发送到您的服务 - 包括通过浏览器完成的请求重播.(包括引用者http标题等).

如果您的情况允许,也许您可​​能会考虑使用VPN设备或类似设备,并限制对网络内用户的访问(或通过VPN进入).这样就不太关心你的服务安全了...... 但是众所周知,"内部攻击者"与外部攻击者一样普遍,如果不是那么普遍......所以不要太舒服.

让我在通行证上解决这个问题,而我正在考虑它; 有人可能会建议浏览器已经阻止了这样的跨站点脚本.是的,这是真的.但通常是另一个应用程序的开发人员添加客户端脚本来调用这些服务 - 他/她可以在服务器端轻松地发出请求并将结果代理到客户端.