问题标签 [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 投票
1 回答
818 浏览

telerik - Telerik Mvc 网格和 AntiForgeryToken

我正在尝试使用我的网格进行设置,以便每个 ajax 帖子的每个操作都包含一个防伪令牌。我的网格是这样设置的:

OnDataBinding (Test) 的处理程序如下所示:

我认为参数 (e) 有一个名为 data 的属性,它接受一个值字典。但是,FireBug 一直抱怨说“数据未定义”。有什么想法可以在每个请求中包含令牌吗?我正在使用版本 2011.Q2.712。谢谢。

0 投票
2 回答
3084 浏览

asp.net-mvc - AntiForgery 例外:所需的防伪令牌未提供或无效

我有一个 MVC2 应用程序。我正在尝试实现 AntiForgeryToken 帮助程序来防止 CSRF 攻击。

我正在使用史蒂夫桑德森的博客来实现这一点:http: //blog.stevensanderson.com/2008/09/01/prevent-cross-site-request-forgery-csrf-using-aspnet-mvcs-antiforgerytoken-helper/

当我在一个新的 MVC2 项目中实现它时,它可以工作。但是当我将相同的代码放在我的真实应用程序中时,它总是抛出这个异常:未提供所需的防伪令牌或无效。

这是我的控制器代码:

查看代码:

除了实际应用程序使用 ADFS 进行身份验证外,这两个应用程序没有区别。我错过了什么?任何帮助将不胜感激。谢谢!

0 投票
2 回答
1262 浏览

asp.net-mvc-3 - 在表单提交中使用 plupload 时未收到 AntiForgeryToken

我正在使用 Plupload 允许将多个图像上传到 mvc3 Web 应用程序。

文件上传正常,但是当我介绍 AntiForgeryToken 时它不起作用,错误是没有提供令牌,或者它无效。

我也无法将 Id 参数作为操作参数接受,它总是发送 null。所以必须自己手动从 Request.UrlReferrer 属性中提取它。

我认为 plupload 正在手动提交上传中的每个文件并伪造自己的表单帖子。

我的表格……

以及连接它的代码......

这是接收它的控制器动作......

如您所见,我必须使 id 参数为空,并且我在 action 方法中手动提取它。

如何确保正确发送每个表单帖子的值?

0 投票
1 回答
915 浏览

asp.net-mvc - ASP.NET MVC 3 Anti-Forgery 保护托管在一台本地服务器上的多门户应用程序

我有 2 个网站,实际上它们是相同的。目的是其中一个是供互联网用户使用的,第二个是供本地使用的。现在它们托管在我的 localhost 机器上的同一个 IIS 服务器上。当我打开这两个网站并尝试获取标有 [ValidateAntiForgeryToken] 的操作结果时,我遇到了一个问题,即在我的 cookie 中,我的 localhost 站点有 cookie,并且有一个名为“ RequestVerificationToken_Lw ”的 cookie,它是防伪保护钥匙。问题在于两个站点都使用相同的 cookie 来存储此密钥。因此,如果在一个网站上做某事,当我尝试在另一个网站上做某事时,我会遇到防伪错误。

如何更改 cookie 域或任何其他解决方案来拆分 cookie?

谢谢你!

0 投票
2 回答
3333 浏览

asp.net-mvc - 为什么 AntiForgeryToken 的隐藏字段与我机器上的 cookie 不同?

我刚刚通过修改默认登录表单使用简单的 ASP.NET MVC 3 示例进行了快速测试。根据这篇文章,隐藏字段__RequestVerificationToken和 cookie__RequestVerificationToken_Lw__必须包含与生成的相同的值Html.AntiForgeryToken()。但是当我在 Fiddle 中得到它们时并不完全相同,顺便说一下,查看 MVC 3 源代码,方法GetAntiForgeryTokenAndSetCookie似乎没有使用盐值来生成 cookie。MVC 3 有什么变化吗?

忘了说我仍然可以使用普通或 Ajax POST 请求成功登录。

这是来自 Fiddle 的原始日志:

0 投票
3 回答
10187 浏览

asp.net-mvc - MVC3 AntiForgeryToken 问题

我正在尝试为我的 MVC3 应用程序实现 AntiForgeryToken。设置 FormAuthentication cookie 后,我遇到了 AntiForgeryToken 问题。这是一个解释我的问题的简单示例。

我有具有以下操作方法的家庭控制器:

这是我的登录和关于视图:

登录.cshtml:

关于.cshtml

我对“登录”发布方法没有问题。它正在验证 antiforgerytoken 并呈现 About 视图。有趣的是,当我在“关于”视图上发帖时,我收到错误“未提供所需的防伪令牌或无效”

有人能指出我在这里做错了什么吗?

感谢你的帮助。

0 投票
2 回答
3469 浏览

asp.net-mvc-2 - System.Web.UI.ViewStateException:无效的视图状态

自从我的托管公司决定升级(并重新启动)我的网络服务器后,我就遇到了奇怪的错误。

这是事实,分解

  • MVC 2 应用程序
  • 视窗 2008 服务器
  • 在 webconfig 中定义的机器密钥(和机器配置中 - 相同的确切密钥)
  • 维护前在网站的 web.config 中定义了机器密钥
  • 站点使用自己的应用程序池作为网络服务运行
  • 我没有使用视图状态,但我使用的是防伪令牌

尽管做了所有陈述,我仍然收到很多这样的错误:

System.Web.UI.ViewStateException:无效的视图状态。客户端 IP:[省略] 端口:56668 引用:https ://someserver.com路径:/Framed/CreditCard/ 用户代理:Mozilla/4.0(兼容;MSIE 8.0;Windows NT 6.0;WOW64;Trident/4.0;GTB7。 1;SLCC1;.NET CLR 2.0.50727;媒体中心 PC 5.0;.NET CLR 3.5.30729;.NET CLR 3.0.30618) ViewState:[省略]

我能够重新创建一次错误,但之后它停止了。我以为我已经修复了它,但我的客户仍然收到错误。

编辑:我最初认为这是因为工作进程回收。情况并非如此,因为我已经向 Web 服务器推送了导致 WP 回收的更改。然而,我确实相信这是他们昨晚所做的更新中的一些内容。等待听到关于他们所做事情的报告。

0 投票
1 回答
4170 浏览

asp.net-mvc - ASP MVC 防伪令牌问题

这是一个理论问题。

如果他/她知道我的所有帖子操作(URL、参数...),是否可以加载我的 URL 之一,解析出防伪令牌值,并通过 ajax 调用前面提到的帖子并获得成功?

或者,这些令牌是否受到某种保护?我真的不知道,因为我真的刚刚开始 MVC,我想确保我的安全。

0 投票
1 回答
2820 浏览

jquery - MVC 3 AJAX 和 [ValidateAntiForgeryToken]

之前问过一个关于这个的问题,得到了一个有趣的答案,这让我在路上,很好地问了更多问题。因此,这是我探索 AJAX 帖子的内部工作原理以及相当烦人的ValidateAntiForgeryTokenAttribute.

我有一个 _layout.cshtml,这是目前所有脚本好东西所在的位置。我有一个登录页面,它呈现三个部分,一个用于 OpenID 登录,这只是一个普通的@using(Html.BeginForm()) {},一个用于本地登录,另一个用于基本注册。登录部分和注册部分都使用 ViewModel 和Ajax.BeginForm

请注意,我正在使用@using Ajax.BeginForm并获取 data-ajax-update attr 以在成功时更新元素

_layout.cshtml 中的脚本:

_layout.cshtml 中的表单元素

控制器中的动作方法:

为什么这行得通,神奇的AntiForgeryToken是,它被包含在我的所有帖子中。我没有抓住它并附加它,我没有用它做任何事情,它真的就在那里。有人可以解释一下为什么会这样。我不喜欢意外的解决方案,它们通常会在以后中断。

0 投票
3 回答
46437 浏览

asp.net-mvc - RequestVerificationToken 不匹配

我对反 CRSF MVC 机制有疑问。返回的 cookie 和表单输入不匹配。我每次都收到错误,仅在一个特定页面中。在应用程序的其余部分中,它运行良好。

服务器正在返回HTTP 500 Internal Server Error,我可以在日志中看到这个异常:

[System.Web.Mvc.HttpAntiForgeryException]:{“未提供所需的防伪令牌或无效。”}

这是服务器生成的隐藏输入:

这是返回的 Cookie:

当我检查服务器发送的内容时,cookie 完全相同,但我认为有效负载具有不同的编码:

区别在于出现编码的两个字符:

这些是我能找到的隐藏输入字段和后有效载荷之间的唯一区别。

ValidateAntiForgeryToken导致验证令牌失败的问题可能是什么?

问候。