設定中ですSame-Site
Lax
へのCookieの属性は、まったく設定しないのと同じですか?違いがある場合、それらは何ですか?
CookieのSame-Site属性を緩く設定することは、Same-Site属性を設定しないことと同じですか?
In Google Chrome <76 – no。_SameSite=lax
_を設定することは、属性を省略するよりも安全です(ただし、現在実装に依存している場合クロスオリジンリクエスト。属性を追加しても何も壊れないことを再確認してください。)
違いは次のとおりです。
SameSite
属性を設定しない場合、Cookieは常に送信されます。
_SameSite=lax
_を使用すると、Cookieは同じサイトのリクエストまたは安全なHTTPメソッドを使用したトップレベルのナビゲーションでのみ送信されます。つまり、クロスドメインPOST
リクエストでは送信されず、クロスオリジンフレームでサイトをロードするときに送信されませんが、標準のトップレベルの_<a href=...>
_リンク。
_SameSite=strict
_(または無効な値)では、Cookieがクロスサイトリクエストで送信されることはありません。サイトへのサードパーティドメインのトップレベルのリンクをクリックしても、ブラウザはCookieの送信を拒否します。
Chrome 76で始まると、ブラウザにはSameSite
が_Samesite=Lax
_のように動作しないようにするオプションがあります。これにより、 bedefault in Chrome 80。From feature description:
安定版のChrome 80は、この機能をデフォルトで有効にすることを目的としています。この機能は、ベータ版でのみ有効になります。Chrome 78以降です。この機能は、Chrome 76以降、same-site-by-default-cookiesフラグを有効にすることで利用できます。
これは現在Chrome=で変更されています-これは、SameSiteを設定しないことは実際にはLAXと見なされることを意味します。
https://blog.chromium.org/2019/05/improving-privacy-and-security-on-web.html
最近、SameSite=Lax
が明示的に指定されていない場合、ChromeはデフォルトでSameSite=None
を実装しました。
さらに、Secure
属性は、SameSite=None
を指定するときに設定する必要があります。そうでない場合、Chromeはそれを無視します。