SameSite設定・・・2018年頃に追加されたCookieの属性、クロスドメインのCookie利用を制限する意図があり、セキュリティのレベルが「None」「Lax」「Strict」の3種類ある。これまではSameSite設定がされていない場合のデフォルト値が「None」だったが、2021年6月3日のChromeバージョン91から「Lax」がデフォルトとなり、そのデフォルト値を変更する設定項目がなくなった。
(バージョン85からデフォルト値が「Lax」になっていたが、Chromeの設定で「None」をデフォルト値にすることができていた。これからも続くと思っていたのは甘かった。)
これによる影響は、たとえばiframeを用いたログインや、ECサイトでの決済など、ドメインをまたいでCookieを利用するサービスが使えなくなる(ログインし直す場合もあれば、実装によっては必要な情報が受け渡せずエラーとなる)ことなどが挙げられる。
Chromiumの指針なので、同じくChromiumを使用するMicrosoft Edgeも同様の対応となる。FireFoxやSafariなどはそれぞれの対応となる。
FireFox・・・SameSite設定は追加されているがデフォルトは「None」のまま
Safari・・・SameSiteは追加されている。未確認だが「None」に設定すると「Strict(厳しい)」になるバグがあるよう(困る)。
これはCSRF(クロスサイトリクエストフォージェリ)を防ぐ方策をブラウザベースで実装するもので、セキュリティの向上という文脈でいうと進歩となる。
そのかわりiframeやECサイト決済など影響をうける処理が多いので、根本的に実装を変える必要がある。
ちなみにアプリケーションの設定でCookieにSameSite=Noneを記述することで上記の処理は引き続き使えるようになるが、たとえばPHPは7.2以上でないとsetcookieの属性にSameSiteを設定できなかったり、プラットフォーム自体の更新を迫られる場合もある。
参考
Chromiumプロジェクト、SameSiteに関するUpdates
https://www.chromium.org/updates/same-site
SameSite Cookieの説明
https://web.dev/samesite-cookies-explained/