HSTS に max-age がない

HSTS に includeSubDomains と preload だけを書き、必須の max-age を書き忘れた例です。仕様に合わないヘッダーとしてブラウザに無視される、典型的な書き漏れを指摘します。

入力

レスポンスヘッダー

Strict-Transport-Security: includeSubDomains; preload

ヘッダーを受け取った通信

HTTPS(暗号化された通信)

結果

エラー 1 件・警告 0 件・情報 3 件

指摘(エラー・警告・情報)

  • 情報 Strict-Transport-Security ディレクティブ「preload」は RFC 6797 に定義がなく、ブラウザは無視します(RFC 6797 6.1)。preload は HSTS のプリロードリスト(ブラウザ事業者の運用)向けの慣用で、このヘッダーの仕様の外です。
  • エラー Strict-Transport-Security max-age がありません。max-age は必須で、ないヘッダーはブラウザに無視されます(RFC 6797 6.1.1)。
  • 情報 Referrer-Policy Referrer-Policy がありません。リファラーの扱いはブラウザの既定に任されます(W3C Referrer Policy 8.1)。方針を固定したいときに指定します。
  • 情報 Permissions-Policy Permissions-Policy がありません。ブラウザの機能(位置情報・カメラなど)の許可を、ヘッダーで制限したいときに指定します(W3C Permissions Policy)。
読み取ったヘッダー1 行
指摘の件数エラー 1 件・警告 0 件・情報 3 件
判定の範囲Strict-Transport-Security・Referrer-Policy・Permissions-Policy の有無と構文だけを機械的に判定します。サイトの安全性は判定せず、指摘がなくても安全とは限りません

ヘッダーごとの解釈

ヘッダーごとの解釈
ヘッダー項目値解釈(構文のみ)
Strict-Transport-SecurityincludeSubDomainsありサブドメインにも同じ方針を適用する(RFC 6797 6.1.2)
Strict-Transport-Securitypreloadあり仕様にない(無視される)
Strict-Transport-Securitymax-age(なし)必須の項目がない
Referrer-Policy-(ヘッダーなし)このヘッダーはありません
Permissions-Policy-(ヘッダーなし)このヘッダーはありません
Content-Security-Policy-(ヘッダーなし)このヘッダーはありません

検算(この結果になる理由)

RFC 6797 6.1.1 で max-age は必須のため、ないことはエラー 1 件です。preload は RFC 6797 に定義がない未知のディレクティブで、ブラウザが無視する旨の情報 1 件になります。Referrer-Policy と Permissions-Policy がない情報が 2 件加わります。

判定の根拠は仕様と根拠に、仕様の出典とともにまとめています。自分の入力で試すにはツールをお使いください。

このツールの制約

ご利用にあたって

  • 結果は仕様にもとづく書式の点検で、サイトの安全性を保証するものではありません。「指摘なし」を「安全」と読み替えないでください。
  • 認証情報や内部のホスト名を含むヘッダーは、ダミーに置き換えて貼り付けてください。入力は保存・送信しませんが、画面共有などでは見えます。

ほかの入力例