web-dev-qa-db-ja.com

Railsでのsession_id Cookie SameSiteプロパティの設定

Rails 5.0.7.2アプリケーションのセッションのCookieにSameSiteプロパティを設定しようとしていますが、これをどこにどのように設定するかを決定するのに問題があります。

SameSiteの保護レベルをグローバルに決定する方法のように見えますRails 6.1参照: https://github.com/Rails/rails/commit/cd1aeda0a9dc15f09d7bf1b8b59e2ce07946f031 =。とはいえ、以前のバージョンでこれをどのように設定するのですか?

SameSiteの処理方法は、今後のChrome=バージョン80に変更されます。具体的には、次のように、これに備えるためです。

「クロスサイト使用のためのCookieは、SameSite = Noneを指定する必要があります。サードパーティのコンテキストに含めることができるように安全です。」

詳細は https://web.dev/samesite-cookie-recipes/ を参照してください。

3
rii

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

2