【问题标题】:rails 3 protect_from_forgery not doing anythingrails 3 protect_from_forgery 没有做任何事情
【发布时间】:2011-07-06 06:35:23
【问题描述】:

我试图在我的 rails 3.0.8 应用程序中伪造伪造请求,但没有成功

我有常规表单,我在提交之前使用 Tamper 更改了身份验证密钥 在这一点上,我希望 rails 会重置会话并因此注销 current_user 但是它没有发生,操作成功完成并且用户保持登录状态

我的应用程序控制器中有protect_from_forgery 语句 我试图将 config.consider_all_requests_local 更改为 false

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3


    【解决方案1】:

    确实...它确实有一些作用,但您必须对其进行编码。

    之前的行为已被删除,这是一个有争议的决定,但您可以将其取回,在您的ApplicationController 中包含以下代码:

    def handle_unverified_request
      #add here code to empty the session
      raise ActionController::InvalidAuthenticityToken
    end
    

    【讨论】:

    • 当前的行为应该是那个handle_unverified_request?重置会话,它不会这样做
    • 另外,我尝试了你的代码,它仍然没有改变任何东西
    • 刚发现这个:stackoverflow.com/questions/6090063/…我不知道你的应用为什么不工作
    • 问题只是 Firefox Tamper 插件中的一个错误。会话现在也按预期重置。
    • 哎哟...时间浪费了。我知道我回答了你的问题?
    猜你喜欢
    • 1970-01-01
    • 2011-11-28
    • 2012-09-07
    • 2016-10-02
    • 2013-09-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多