微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

asp.net-mvc-2 – 抛出间歇性错误,“所需的防伪令牌未提供或无效.

我在正常使用过程中偶尔会收到此错误,而我没有找到一种方法来阻止它,而不需要删除需要令牌的属性,我宁愿不做.

我在自己的测试中遇到了这个错误(但是似乎是随机的),我从我的记录中知道实际登录用户也是这样.

有谁知道什么会导致防伪系统打破(真正的攻击除外),如何解决这个问题,而不会打开我的表单中的安全漏洞?

谢谢!

解决方法

这是我对 a similar question的回答的一部分:

机器钥匙和饼干:这个问题是丑陋的,容易发现(导致异常),但不是非常直观.验证cookie和令牌使用唯一的“机器密钥”进行编码和解码.这意味着如果您有服务器场或更改服务器,您的cookie将不再有效.关闭浏览器可以解决问题(因为cookie是一个会话cookie).但是,有些人在后台打开浏览器窗口很长一段时间!
解决方案是在你的配置文件中设置一个“机器密钥”.这将告诉MVC在所有服务器上使用相同的密钥,确保cookie可以随处可见.

请注意:如果用户保持任何浏览器窗口打开,即使更改了机器密钥,他们仍将继续收到这些错误信息!他们必须关闭窗口(以清除会话cookie),以便再次访问您的网站.

原文地址:https://www.jb51.cc/aspnet/249483.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐