问题标签 [antiforgerytoken]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
7049 浏览

c# - ASP.NET MVC HTML.AntiForgeryToken() 与来自一页的多个 AJAX 请求

我正在创建一个页面,该页面无需刷新页面即可制作多个 AJAX 表单帖子。

我想使用 ASP.NET MVCHTML.AntiForgeryToken()助手来保护表单免受 CSRF 攻击。我认为页面上的每个表单都可以共享相同的令牌,但它是否允许使用相同令牌的多个请求?如果没有,有没有办法获得新的令牌或其他方式来保护表格?

0 投票
1 回答
1513 浏览

asp.net-mvc-2 - 仅在运行调试器时出现防伪令牌异常

我有一个 mvc2 应用程序,它通过 iframe 提供内容。iframed 页面只是一个表单。它有一个请求验证令牌。在开发人员使用 Visual Studio 2005 调试器之前,一切都可以跨域运行。一旦他们这样做,我就会收到以下错误详细信息。

我们已删除所有 cookie,重新启动机器,重新启动 Visual Studio,但调试器仍然会导致此错误。

我在 web.config 中添加了一个声明的机器密钥。我不确定它还能是什么。仅当调试器正在运行并且他们使用 Visual Studio 2005 时才会发生这种情况。

0 投票
1 回答
639 浏览

asp.net-mvc - 从 MVC 3 子应用程序向 ASP.NET MVC 2 应用程序提交登录表单 - 防伪令牌无效

我在/localhost/app有一个父 ASP.NET MVC 2 应用程序(在我的开发机器上的 IIS 中运行)。我可以从/localhost/app/Account/LogOn 登录。我在/localhost/app/childapp有一个子应用程序(MVC 3) 。两个应用程序的 web.config 具有相同的 machineKey(validationKey/decryptionKey),如果我通过父应用程序登录,子应用程序通过父应用程序设置的 cookie 正确验证。

我想要的是能够转到子应用程序的登录页面/localhost/app/childapp/Account/LogOn并将该页面发布到父应用程序的登录帐户控制器。但是,当我尝试此操作时,父应用程序给我一个服务器错误“未提供所需的防伪令牌或无效。” 鉴于我在 cookie 和 post 中都有一个 RequestVerificationToken,它应该是后者(无效,与未提供)。

这只是防伪令牌做的事情,尽管共享身份验证cookie,我不能使用该令牌并跨应用程序发布?或者有没有办法让这个工作?非常感谢!

0 投票
11 回答
68555 浏览

asp.net-mvc - 解决防伪令牌问题

我有一个表格帖子,它一直给我一个防伪令牌错误。

这是我的表格:

这是我的操作方法:

这是 web.config 中的 machineKey:

这是我得到的错误:

我读过在 HttpContext 上更改用户将使令牌无效,但这不会发生在这里。我的加入操作上的 HttpGet 只返回视图:

所以我不确定发生了什么。我四处搜索,一切似乎都表明它是 machineKey 更改(应用程序周期)或用户/会话更改。

还有什么可能发生的?我该如何解决这个问题?

0 投票
1 回答
1002 浏览

asp.net-mvc - 当子域中存在下划线时,AntiForgeryToken 无法在 IE 中验证?

这个真的把我难住了。我的 AntiForgeryTokens 在 Firefox 和 IE 中运行良好,但是,并且仅在 IE 中,如果 URL 的子域中有下划线“_”(在 URL 的其他位置没有尝试过下划线),它将无法验证每个时间(无论从没有 cookie 的空缓存开始)。这意味着什么?

0 投票
2 回答
12663 浏览

asp.net-mvc - 如果我在一个页面中添加多个表单,是否需要在每个表单中添加单独的防伪令牌?

如果答案是肯定的,那么 ASP.NET MVC 将如何找出哪个令牌链接到哪个表单以及如何验证它?

我已经看到它为每个表单创建了两个单独的标记。

0 投票
0 回答
282 浏览

asp.net-mvc-2 - MVC2 Anti-ForgeryToken 帮助

我已在我的应用程序中的 POST 操作中应用了防伪令牌。当会话超时时,我收到“未提供所需的防伪令牌或无效”错误。我在 web.config 中添加了一个 machineKey,但这并没有解决问题。我需要做些什么来强制令牌使用机器密钥吗?

感谢您对此的任何帮助。

0 投票
1 回答
1294 浏览

asp.net-mvc-2 - MVC 2 Antiforgerytoken 会话问题

我已经在我的 MVC 2 应用程序中实现了 antiforgerytoken。
还在web.config. _ 当会话到期并且我尝试发布帖子时,它会引发A required anti-forgery token was not supplied or was invalid错误。
防伪令牌似乎即将到期。

我的问题是

  • 为什么会话到期后会抛出错误?
  • 令牌的有效期是多久?
0 投票
1 回答
1469 浏览

asp.net-mvc - AntiForgeryToken 和 MachineKey 配置

我正在尝试将 .NET MVC 应用程序部署到 GoDaddy 服务器。我的一个页面上有一个 Html.AntiForgeryToken ,导致每次点击它都会引发异常。

我使用以下 URL 生成了机器密钥

并将页面 viewStateEncryptionMode 设置为“始终”

但是,我仍然收到错误消息,并且不知道下一步该做什么。任何建议将不胜感激。

0 投票
2 回答
2138 浏览

asp.net-mvc - MVC3 远程验证和 AntiForgeryToken

在阅读了有关 XSS 攻击的信息后,我使用本文中描述的 ValidateAntiForgeryTokenWrapperAttribute 将 AntiForgeryToken 应用于我的网站:

http://weblogs.asp.net/dixin/archive/2010/05/22/anti-forgery-request-recipes-for-asp-net-mvc-and-ajax.aspx

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

这也让我质疑我是否应该在每个控制器上使用 ValidateAntiForgeryTokenWrapperAttribute,有什么想法吗?