gpt4 book ai didi

c# - 防止对我的 wcf 服务的跨域请求

转载 作者:太空狗 更新时间:2023-10-29 23:18:04 26 4
gpt4 key购买 nike

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

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

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

最佳答案

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

如果关于您的服务的某些方面不够安全,您应该考虑解决该问题 - 而不是试图阻止人们提出请求。

任何人都可以随时使用 Fiddler、Charles 等调试代理或 WireShark 等工具向您的服务发送他们想要的任何数据 - 包括通过浏览器发出的请求的完整重播. (包括 referrer http header 等)。

如果您的情况允许,也许您可​​以考虑使用 VPN 设备或类似设备,并限制网络内用户(或通过 VPN 进入)的访问。这样一来,您对服务安全的担忧就会减少....但是众所周知,“内部攻击者”同样普遍,甚至更普遍,比外部的...所以不要太舒服。

让我在传球时也阻止这个争论,当我在它的时候;有人可能会建议浏览器已经阻止了这样的跨站点脚本。是的,这是真的。但通常是其他应用程序的开发人员添加客户端脚本来调用这些服务 - 他/她可以轻松地在服务器端发出该请求并将结果代理到客户端。

关于c# - 防止对我的 wcf 服务的跨域请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6559267/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com