我的问题是关于MVC Antiforgery系统(描述here)。
考虑一个简单的应用程序,它将待办事项发布到/ Todo / Create。相应的操作方法具有ValidateAntiForgeryToken
属性。请考虑以下客户端工作流程:
在这种情况下,Antiforgery验证将不会通过,因为表单令牌适用于用户A,而验证cookie适用于用户B.
我确定此行为存在有效的安全原因(例如,另一个设法以恶意用户身份登录的网站上的脚本,以便将“&#t; todo”数据发布到其帐户中) ,但它有时不会阻止我的合法用户发生上述情况。
我的问题是:
HttpAntiForgeryException
)。我是否需要恢复使用/修改其来源?答案 0 :(得分:1)
我看到两种处理方式:
避免回调的一个解决方案可能是使用html 5 localStorage(例如,您可以使用modernizr在其他浏览器上支持)。它在标签之间共享。但我不确定这种方法是否合适。需要进一步研究。
通常使用方法(1)。在银行网站上,当您在其他浏览器选项卡中注销时,他们会使用JavaScript检测到。