在阅读了有关 XSS 攻击的信息后,我使用本文中描述的 ValidateAntiForgeryTokenWrapperAttribute 将 AntiForgeryToken 应用于我的网站:
它似乎运行良好,但是我在 MVC3 中使用远程验证时遇到了一个问题。我有一个 ValidationController,其中包含我的站点中的所有常见验证,如果我将 ValidateAntiForgeryTokenWrapperAttribute 应用于它,那么远程验证将不再有效,并且我得到一个“未提供所需的防伪令牌或无效。” 异常记录在 Elmah 中。我已经尝试过调试它,它甚至在抛出异常之前都没有触发控制器动作。我认为发生这种情况是因为远程验证不知道将 AntiForgeryToken 传递给控制器 - 有没有其他人遇到过这个问题或者知道这两者是否不打算一起使用?
这也让我质疑我是否应该在每个控制器上使用 ValidateAntiForgeryTokenWrapperAttribute,有什么想法吗?