【发布时间】:2010-03-03 00:17:12
【问题描述】:
对不起,如果我听起来有点愚蠢,但这件事让我很困惑,我一直在网上疯狂地搜索,没有最终答案,所以我希望有人能对这件事有更多的了解。
现在我想创建一个门户网站,而我的客户要求一切都应该是 AJAX 的,所以我一直在使用 ASP.NET AJAX 4 和客户端网站模板和 Web 服务,当然,JASON 结果的性能很好,但我的网络服务代码将是公开的,因为任何人都可以使用任何可用于 JAVA 脚本的内容,因此我必须阅读以避免这种情况:
- 使用 SSL,但这是一个门户网站,前端不应使用 SSL
- 身份验证,这可以吗,但对于后端而不是前端,因为不需要登录。
在阅读了我提到的很多内容后,我在使用带有 AJAX 的 Web 服务时遇到了以下陷阱,并希望有一个解决方案或至少一种方法来带来更高的安全性
DOS: 我已经阅读了一些文章,建议您应该使用 IP 检测来限制并阻止此请求一段时间,但这里有一些我担心的事情
- 会影响搜索引擎爬虫吗?
- 黑客能否通过使用代理或其他手段绕过此问题?
会话劫持: 这太可怕了,我仍然不知道当您使用 ASP.NET 会员时会发生这种情况,我认为这是一个非常可靠的会员系统! 黑客是否能够通过这种方法窃取某人的通行证?
隐藏或加密代码的方法: 我想我在这里自欺欺人,因为我已经提到如果它对 java 脚本是公开的,那么它对任何人都是公开的,但是我的客户不希望人们看到代码编写逻辑和功能。
隐藏网络服务: 就像如果您使用提琴手,您可以在 RAW 数据中再次看到例如 www.mysite.com/toparticles/getTopArticles(10) 的路径,这让我的客户感到害怕,我试图在 webconfig 中禁用 WSDL 和文档,但这只会阻止直接访问文件,仅此而已,或者我错了!有没有办法隐藏网络服务的路径?
所以我最关心的是防止破坏我的任何网络服务并尽可能隐藏我的代码。
所以我是偏执狂,因为在前端我主要是拉数据,但我可以再次让用户选择将他的小部件首选项保存在 DB 等中......而且它不会通过SSL 因此上述安全威胁是有效的。
我希望有人也可以分享他在这件事上的经验, 提前致谢。
【问题讨论】:
标签: asp.net web-services asp.net-ajax