轨道:安全会话cookie



我有一个没有用于登录的用户界面的rails应用程序。用户登录由另一个应用程序完成,并创建会话。我们使用 Devise 进行身份验证。现在,当我们检查会话时,安全标志设置为 false。

根据我的研究,我试图在config/initializers/session_store.rb中设置安全标志

My::Application.config.session_store :cookie_store, :key => '_MyApp_session', :secure => true

并重新启动了服务器。然后我检查了我的会话对象,它仍然具有安全标志 false。

另外,当我在调试器和键入会话输出中停止我的应用程序时

#<ActionDispatch::Request::Session:0x6f43200 not yet loaded>

所以我做到了

session[:init] = true

,然后检查安全标志。

如何保护我的会话对象?

此外,其他 cookie 在云中具有安全属性 true,但在我的本地,它不显示安全:true。

安全标志使cookie仅由浏览器通过https连接发送,而不是纯http。

如果你的环境不是 https,则安全标志没有意义,并且不会有效地设置。因此,您只能通过https进行测试。

最新更新