2017-06-27 55 views

回答

8

这是一项安全功能,可帮助保护您的应用程序免受跨站请求伪造。

例子:

让我们假设你在你的web应用程序寄存器功能。您有一个AccountController(somename.com/account/register),您希望人们提交他们的信息。通常在有人发布注册信息之前需要访问实际的(somename.com/account/register)而不是提交表单。

让我说我是一个坏人,我想用垃圾信息泛滥你的服务器,我只需要直接发布到(somename.com/account/register)而不必访问你的网站。因此,为了阻止我实施AntiForgeryToken,以便在我登记注册信息之前确保我访问了该页面。

的另一个例子是(http://www.binaryintellect.net/articles/20e546b4-3ae9-416b-878e-5b12434fe7a6.aspx

+0

感谢您的详细解释。我完全明白:) – Mhd

+0

很酷。如果这个答案帮助你理解问题,你可以接受它作为正确的答案。 – Dynamikus

2

这是为了防止您的MVC应用程序中的Cross-site request forgery。这是OWASP Top 10的一部分,它对网络安全至关重要。使用@ Html.AntiforgeryToken()方法将为每个请求生成一个令牌,然后无人可以伪造一个表单帖子。

+0

非常感谢你:) – Mhd