阅读有关XSS攻击的文章后,我已经使用ValidateAntiForgeryTokenWrapperAttribute在我的网站上应用了AntiForgeryToken。该文章中描述了如何使用此属性:
似乎它工作得很好,但是在使用MVC3中的远程验证时,我遇到了一个问题。我有一个ValidationController,其中包含我网站上所有常见的验证。如果我将ValidateAntiForgeryTokenWrapperAttribute应用于它,那么远程验证将不再起作用,并且我会在Elmah中记录一个“未提供或无效的必需防伪令牌”异常。我尝试过调试,但在抛出异常之前它甚至没有命中控制器操作。我想这是因为远程验证不知道将AntiForgeryToken传递给控制器 - 是否还有其他人遇到过这个问题或者是否知道这两个是否不应该一起使用?这也让我怀疑是否应该在每个控制器上都使用ValidateAntiForgeryTokenWrapperAttribute,有什么想法吗?