我试图在我的 Rails 5.0.7.2 应用程序的 session cookie 中设置 SameSite 属性,但我在确定在哪里以及如何设置它时遇到问题。
看起来 Rails 6.1 中将引入一种全局确定 SameSite 保护级别的方法,请参阅:https://github.com/rails/rails/commit/cd1aeda0a9dc15f09d7bf1b8b59e2ce07946f031 .也就是说,如何在以前的版本中设置它?
处理 SameSite 的方式将改变即将推出的 Chrome 80 版,我正在尝试为此做好准备,特别是因为它涉及:
"Cookies for cross-site usage must specify SameSite=None; Secure to enable inclusion in third party context."
见 https://web.dev/samesite-cookie-recipes/更多信息。
最佳答案
我可以用 secure_headers gem 做到这一点和 rails 4.2.11.1,我把配置放在一个初始化程序中
SecureHeaders::Configuration.default do |config|
config.cookies = {
samesite: {
none: true
}
}
end
https://github.com/twitter/secure_headers/blob/master/docs/cookies.md
关于ruby-on-rails - 在 Rails 中设置 session_id cookie SameSite 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59638005/