ruby-on-rails - rails session store 使用错误的域设置 cookie
问题描述
我们正在使用带有设计的 Rails 来提供用户身份验证。最近我们将 session_store 配置中 cookie_store 的域更改为 .example.com。一切都按预期工作,cookie 已正确创建。
现在,在极少数情况下,我们会获得域 subdomain.example.com 的会话 cookie。这与带有错误域的 rack.session cookie 一起发生。
因为我们无法解释为什么有时 cookie 具有完整的域,所以我们怀疑它与 rack.session cookie 有关。我们找不到 rack.session cookie 的设置时间。我通过设计登录并没有设置 rack.session cookie。
在错误的域下设置会话 cookie 是否有人遇到同样的错误?了解在哪些情况下设置 rack.session cookie 会很有帮助。
解决方案
似乎是 sidekiq-ui 引起了这个问题。访问 ui rack.session 和会话 cookie 时设置了错误的域。
这可以通过 config/initializers/sidekiq.rb 中的以下配置来解决
Sidekiq::Web.set :sessions, domain: 'all'
推荐阅读
- powershell - 如何从get-process获取指定值
- notion-api - 如何在概念中添加表达式作为上标?
- reactjs - 状态未更新 React 来自
- python - 这个算法的运行时间复杂度是多少,得到 n 的所有因数?
- javascript - MSE WebM 在没有结束事件的持续时间之前完成
- amazon-kms - Aws KMS 客户端 PublicKeyResponse,如何使用 Java 客户端获取 PublicKey
- azure-devops - Azure 管道将 pom 存储库协议从 https 更改为 http
- azure - 如何使用 Visio 为 Kusto 绘制应用程序架构图?
- c++ - 在没有 system() 的父窗口中运行外部程序
- html - 有人可以告诉我为什么我的悬停和焦点不起作用