首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Rails设计skip_forgery_protection不工作

Rails设计skip_forgery_protection不工作
EN

Stack Overflow用户
提问于 2022-11-14 11:01:02
回答 1查看 14关注 0票数 0

我试图跳过密码确认控制器中的伪造保护,但是跳过伪造保护方法似乎没有效果。verify_authenticity_token函数总是被运行。

FYI skip_forgery_protection看起来像:

代码语言:javascript
复制
def skip_forgery_protection(options = {})
  skip_before_action :verify_authenticity_token, options
end

我的控制器看起来像:

代码语言:javascript
复制
class PinConfirmation < Devise::ConfirmationsController
  
  skip_forgery_protection only: :confirm_pin

  def pin
    # render pin confirmation page
  end

  def confirm_pin
    # do pin confirmation 
  end

end

由于某种原因,verify_authenticity_token被运行,尽管skip_forgery_protection是在上面定义的。

EN

回答 1

Stack Overflow用户

发布于 2022-11-14 12:33:32

经过进一步的调查,我发现在手动从表单中删除CSRF令牌并使用skip_forgery_protection提交之后,实际上跳过了伪造保护,即使在这两种情况下都运行了verify_authenticity_token。跳转似乎发生在低于此函数的级别。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74430593

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档