问题标签 [authenticity-token]
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.
ruby-on-rails-3 - 真实性令牌在rails 3中没有改变
我的应用程序是使用 rails 3 构建的,并且我在 application.html.erb 中添加了 csrf_meta_tag。
真实性令牌针对不同的用户而变化,但令牌在整个会话中是相同的,即它不会因每个 put & post 请求而改变。
知道如何解决这个问题吗?
ruby-on-rails-3.2 - CSRF 令牌会话被重置
我在会话中使用 Rails 3.2.3 和 active_record_store。
我的理解是 Rails 中的 CSRF 令牌存储在会话中,除非调用 reset_session 或由于某种原因会话被破坏,否则不应重置。
但是在某些地方,当远程表单通过 ajax 加载时,它包含的真实性令牌与该页面上 META 标记中指定的真实性令牌不同。因此,在提交该表单时会导致无效令牌错误和 reset_session。
我无法弄清楚为什么会话 [:_csrf_token] 被破坏并创建新令牌的有效会话?
ruby-on-rails - 表单提交参数缺少authentity_token,仅具有黄瓜功能
有一个简单的原因为什么我form_submits
在我的Rails 3
应用程序中不使用authenticity_token
Cucumber 中的集合生成请求,而它们在作为开发(和生产)运行时会生成请求?
该应用程序运行良好,除了在运行 Cucumber 功能测试时重定向到登录。
ruby-on-rails - Rails 4 真实性令牌
当我遇到一些真实性令牌问题时,我正在开发一个新的 Rails 4 应用程序(在 Ruby 2.0.0-p0 上)。
在编写响应 json 的控制器(使用respond_to
类方法)时,我create
开始ActionController::InvalidAuthenticityToken
尝试使用curl
.
我确定我设置-H "Content-Type: application/json"
并设置了数据,-d "<my data here>"
但仍然没有运气。
我尝试使用 Rails 3.2(在 Ruby 1.9.3 上)编写相同的控制器,但我没有遇到任何真实性令牌问题。我四处搜索,发现 Rails 4 中的真实性令牌发生了一些变化。据我了解,它们不再自动插入表单中了吗?我想这会以某种方式影响非 HTML 内容类型。
有没有办法绕过这个问题,而不必请求 HTML 表单,获取真实性令牌,然后使用该令牌发出另一个请求?还是我完全错过了一些完全明显的东西?
编辑:我刚刚尝试使用脚手架在一个新的 Rails 4 应用程序中创建一个新记录,而不做任何更改,我遇到了同样的问题,所以我想这不是我所做的。
ruby-on-rails - 为什么 Rails Authenticity Tokens 会话是持久的,而不是每次提交都是唯一的?
我想知道为什么 Rails 形成 Authenticity Tokens 会持续整个会话,而不是每次提交都唯一生成。
我来自web2py,其中表单是使用称为_formkey
. formkey 自动防止由于双击、后退按钮缓存等导致的重复提交。
在 Rails 中,您显然必须自己处理重复提交问题(请参阅https://stackoverflow.com/a/4683161/165673)。在我看来,一次性真实性令牌可以解决这个问题,并且更安全?
ruby-on-rails - Rails 4 真实性令牌是否应该因形式而异?
我主页上的每个表单都显示了不同的真实性令牌。CSRF 元标记显示了另一个真实性令牌。
他们不应该都一样吗?
我创建了一个新的 Rails 4 项目并且所有标记都匹配。
javascript - Ruby on Rails:在 Header 或 POST 中的 Authenticity Token 的区别
我刚刚注意到,Authenticity Token
通过AJAX
. 我可以将其附加到表单中POST data
,也可以将其放入Header
.
有什么区别吗?特别是在安全方面?
此外:
我没有在Javascript
. 我现在接触到什么了吗?
提前致谢。
编辑:
这是我Javascript
将令牌添加到Header
或(注释掉)到POST data
. AUTH_TOKEN
是原始密钥。我没有以任何方式对其进行编码。
ruby-on-rails-4 - 当我提交表单时,我在 rails 4 中遇到了真实性异常
好的。我一直在用一个简单的 rails 4 应用程序巡航很长时间,突然间我遇到了一个异常,并且信息没有存储在数据库中。
控制器-
def new @game = Game.new 结束
def create @game = Game.new(game_params) if @game.save redirect_to @game,注意:“Game Created” else render :new end end
def destroy @game = Game.find(params[:id]) @game.destroy redirect_to root_path,注意:“游戏被删除。” 结尾
def edit @game = Game.find(params[:id]) end
def update @game = Game.find(params[:id]) if @game.update(game_params) redirect_to @game, 注意:“游戏已更新” else render :edit end end
私人的
def game_params params.require(:game).permit(:location, :date, :time) end end
形式 - <%= form_for(@game) 做 |f| %>
ruby-on-rails - 自定义操作中缺少 Authenticity_token
我有一个控制器,其中有一个自定义操作(不是 RESTful 集的一部分)来创建关联对象。
没有添加到表单中,我认为这authenticity_token
是因为该操作不是 RESTful 集的一部分?
authenticity_token
当它没有自动添加时,我将如何添加?
regex - 如何使用 Jmeter 的“正则表达式提取器”在运行时捕获变化的“authenticity_token”?
我试图投入input\s+name=”authenticity_token”\s+type=”hidden”\s+value=”(.*?)”\s*\
,Jmeter's Regular Expression Extractor
但这无济于事,测试失败。因为Template
我一直保持着$1$
。
在查看页面来源时,它是这样写的:
<input name="utf8" type="hidden" value="✓" /><input name="authenticity_token" type="hidden" value="OzzoQsvruAetQAiAMj5Mh4L730w0PUxzoALcgT3dI+o=" />
基于上述,我应该如何编写内容Regualr Expression Extractor
请看下图:
它的 Ruby on Rails 应用程序