#chromeアップデートでcookieに新しくSameSite属性が追加
###SameSite属性の目的
今開いているページのドメインから、別のドメインにリクエストを送る際に、cookieをセットするかどうかを制御。
###SameSite属性の種類
Strict
- cookieをセットしない
Lax (デフォルト)
- SameSite属性の指定がない場合、扱われる。
- サーバーとCookieのドメインが同じでもcookieをセットしない場合がある。(POSTメソッド、imgタグ、XMLHttpRequests等)
- トップレベルナビゲーションであるもの、かつ、getリクエストであるものにcookieをセットする。
- トップレベルナビゲーションとは・・・ ナビゲーションのためにアドレスバーのURLが変更されること。
None
- cookieをセットする(secure属性を有効する必要がある。)
###SameSite属性のポイント
- SameSite 属性が指定されていない場合、デフォルトでcookieを「SameSite = Lax」として扱うようになる
- SameSite = Noneが指定されてる場合、secure属性を有効にしていないとエラーを返す
###多くの人がLux設定にするだろうからもう少しわかりやすく
調べてみたら、リクエストタイプ別にCookie送信の可否を書いている人がいたので引用させてもらいます
引用元の記事
リクエストタイプ | コード | Cookie送信 |
---|---|---|
Link | a href="…" | ◯ |
Pererender | link rel="prerender" href="…" | ◯ |
Form GET | form method="get" action="…" | ◯ |
Form POST | form method="post" action="…" | × |
iframe | iframe src="…" | × |
AJAX | $.get('…') | × |
Image | img src="…" | × |
##設定方法
src/config/session.phpを修正
src/config/session.php
'same_site' => null,