【问题标题】:Possible to delete all Rails session info for all users可以删除所有用户的所有 Rails 会话信息
【发布时间】:2019-10-31 10:49:38
【问题描述】:

我正在开发旧版 Rails 3.2 应用程序,并且希望将所有人注销并重置他们的 _app_session 并将安全标志设置为 true。似乎将我们的 session_store 策略更改为secure: true 或 config.force_ssl = true。奇怪的是,只有后者似乎在 Chrome 中可以正常工作。

问题是,记录每个人的最佳方式似乎是删除他们的会话变量,我在https://stackoverflow.com/a/11422931/152825 of:

尝试了这个解决方案
rake tmp:sessions:clear

但它似乎没有工作。有没有更好的方法来清除这些会话变量?

【问题讨论】:

  • 更改您的 secret_key_base (ENV['SECRET_KEY_ BASE']) 可能会成功。

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


【解决方案1】:

只要您的会话没有真正保存在后端,您就不能直接删除它们。但是您可以通过更改 secret_key_base 来使其失效。

Rails 使用该长随机密钥来加密会话 cookie。一旦改变 - 所有旧会话将不再有效,因为 rails 无法解密它们。

【讨论】:

    猜你喜欢
    • 2015-09-01
    • 2013-11-11
    • 1970-01-01
    • 1970-01-01
    • 2019-06-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-22
    相关资源
    最近更新 更多