AZ Tools

Cookie / Set-Cookie ヘッダービルダー

ネットワーク

ブラウザが受け入れる `Set-Cookie` ヘッダーを構築する、スペック推奨の順序で、すべての属性が正しく命名されている(PascalCase、末尾セミコロンなし)。プリセットは時間の 90% に書く 4 つの形をカバー:短命のセッションクッキー、より長い 'remember me'、サードパーティ埋め込みクッキー(SameSite=None + Secure + Partitioned)、厳格な CSRF トークン。ツールは人々を最もよく噛む罠についても警告する — Secure なしの SameSite=None、Domain の先頭ドット、JavaScript から必要なクッキーの HttpOnly。

プリセット
Set-Cookie ヘッダー
Set-Cookie: session=abc123; Path=/; SameSite=Lax; Secure; HttpOnly

レスポンスにこれを発する。ブラウザはクッキーを保存する;マッチするドメイン + パスへの次のリクエストは `Cookie: name=value` を自動的に送信する。

使い方

  1. ユースケースに最も近いプリセットから始めて、そこから微調整する。
  2. 新鮮な CSRF トークンには、strict プリセットを選ぶ — SameSite=Strict はそれをクロスオリジンリクエストが運ぶのを防ぐ。
  3. サードパーティ埋め込みは、今日 Chromium ブラウザに着地するには SameSite=None + Secure + Partitioned が必要。

よくある質問

なぜ SameSite=None は Secure を必要とする?
Chromium は Secure でない SameSite=None クッキーを拒否する — それは、サードパーティクッキーを HTTPS のみに強制するクッキースペックの方法であり、そこではネットワーク攻撃者にスニッフィングされない。
Partitioned 属性は?
Partitioned(CHIPS)はブラウザにサードパーティクッキーをトップレベルサイトごとにスコープするように伝える。それなしでは、Chrome のサードパーティクッキー段階的廃止がクッキーを完全にブロックする;それを使うと、埋め込みはまだ機能するが、各親サイトは自分のジャーを見る。

関連ツール