【问题标题】:Securing jQuery SPA web services保护 jQuery SPA Web 服务
【发布时间】:2012-01-30 08:57:20
【问题描述】:

我正在构建一个项目,该项目使用 jQuery 与托管在共享点内的单个 Web 服务进行通信(这一点可能没有实际意义,但我将其包含在背景中,并强调会话状态在多前端环境中不好) .

Web 服务是 ASP.Net ASMX 服务,它返回一个 JSON 模型,然后使用 Knockout 将其映射到 UI。要保存表单,反之亦然 - JSON 模型被发送回服务并持久化。

客户已经公开了对发送到服务器和从服务器发送的数据保密性的要求:

  1. 有些数据只能从客户端发送到服务器。
  2. 有些数据只应出现在特定视图中(可使用 ViewModel 解决,因此不必太在意这一点)
  3. 数据应免受经典回放攻击。

缺乏构建专有安全性,保护 Web 服务的最佳方法是什么,是否有任何其他库可以帮助我 - 无论是 JavaScript 还是 .Net

【问题讨论】:

  • 与您的服务器建立 https 连接可以做到这一点吗?

标签: security jquery asmx viewmodel knockout.js


【解决方案1】:

我会将此作为答案发布...以获取分数的可能性:)...但我不知道您可以轻松地说有一种“正确的方法”可以做到这一点。

发送到服务的通信当然应该是 https。这限制了中间人攻击。我总是检查发送客户端的 IP 是否与主机标头中的 IP 地址相同。这可以被欺骗,但它使它更烦人:)。此外,我在客户端发送之前对所有 JSON 进行时间戳记,然后确保它在服务器上的 X 秒内。这有助于防止播放攻击。

显然 JavaScript 是不安全的,您始终需要牢记这一点。

希望这能给你一点见解。我正在写一篇关于我一直在使用的这种模式的博客文章。它可能对你有帮助,但还没有完成:(。我会在今晚或明天的某个时间发布一个链接。

【讨论】:

    猜你喜欢
    • 2010-09-12
    • 1970-01-01
    • 2013-10-01
    • 2014-09-13
    • 2011-02-05
    • 2013-10-19
    相关资源
    最近更新 更多