如何将一个Ajax Post发送到Handler.ashx安全并停止直接调用处理程序

时间:2012-06-27 18:00:03

标签: c# javascript jquery asp.net vb.net

在网站环境中,你如何将一个ajax帖子发送到Handler.ashx安全,你如何阻止人们直接调用该handler.ashx并将垃圾放入并可能破坏服务器端?

使用firefox和firebug,你可以快速轻松地破解帖子。

我在考虑这些想法。

  1. 在处理程序中检查您是否已登录。
  2. 在网站加载的列表项创建一个唯一的ID保存为cookie和 当调用处理程序时,该ID必须存在于Ajax和 处理程序
  3. 列表项ajax调用必须来自某个页面
  4. 你还有其他想法吗?

    由于

1 个答案:

答案 0 :(得分:4)

简短回答

使用身份验证(WindowsForms等)并验证您的输入。

答案稍长

如果您的站点配置了身份验证提供程序,则处理程序将遵循相同的规则。

您应该始终验证任何用户输入或Web服务输入。不要以为您的客户正在为您提供原始输入。正如您所提到的,任何具有基本Web开发技能的人都可以欺骗POST。在验证时请记住这一点。