__Host- なのに Domain と Path が合わない
__Host- 接頭辞を付けながら、Domain を指定し Path を /app にしてしまった例です。接頭辞の条件が 2 か所で崩れ、ブラウザが Cookie を受け入れなくなります。
入力
Set-Cookie ヘッダーの行
__Host-sid=x; Domain=example.com; Path=/app; Secure; HttpOnly
この Cookie の用途
ログイン・セッションの Cookie(HttpOnly がないと警告にする)
結果
エラー 2 件・警告 0 件・情報 1 件
指摘(エラー・警告・情報)
- エラー 1 行目(__Host-sid) __Host- 接頭辞の Cookie には Domain を付けられません(rfc6265bis 4.1.3.2)。Domain を外します。
- エラー 1 行目(__Host-sid) __Host- 接頭辞の Cookie には Path=/ が必要です(rfc6265bis 4.1.3.2)。
- 情報 1 行目(__Host-sid) SameSite がありません。ブラウザは既定の扱い(Lax 相当)にします(rfc6265bis 4.1.2.7)。サイトをまたいで送りたい場合は SameSite=None; Secure を明示します。
| 読み取った Set-Cookie | 1 行 |
|---|---|
| 指摘の件数 | エラー 2 件・警告 0 件・情報 1 件 |
| 判定の範囲 | 書式と属性の組み合わせだけを、RFC 6265 と rfc6265bis(ドラフト)の規則で機械的に判定します。指摘がなくても安全とは限りません |
Cookie ごとの属性
| Cookie 名 | Secure | HttpOnly | SameSite | 有効期限 | Domain | Path |
|---|---|---|---|---|---|---|
| __Host-sid | あり | あり | 指定なし | なし(ブラウザを閉じるまで) | example.com | /app |
検算(この結果になる理由)
rfc6265bis 4.1.3.2 は __Host- に Domain を付けず Path=/ を求めるため、Domain の指定と Path=/app の 2 件がエラーです。Secure と HttpOnly はあるので、SameSite がない情報 1 件(Lax 相当になる)だけが加わります。
判定の根拠は仕様と根拠に、仕様の出典とともにまとめています。自分の入力で試すにはツールをお使いください。
このツールの制約
- Cookie の値そのものの強さ(推測されにくさ・署名・暗号化)は判定しません。値は書式の確認だけです。
- ブラウザごとの実装の違い(サードパーティ Cookie の制限など)や Partitioned 属性は、このツールでは確認しておらず判定しません。
- 実際にサーバーへ接続して Set-Cookie を取得する機能はありません。貼り付けた文字だけを読みます。
- 複数の Set-Cookie を 1 行にコンマでつなげた貼り付けは読めません。1 行に 1 つに分けて貼り付けます。
ご利用にあたって
- 結果は仕様にもとづく書式の点検で、サイトの安全性やブラウザでの実際の動作を保証するものではありません。「指摘なし」を「安全」と読み替えないでください。
- 本物のセッション値や認証情報を含む Set-Cookie は貼らず、値をダミーに置き換えてください。入力は保存・送信しませんが、画面共有などでは見えます。