Webセキュリティ設定

セキュリティヘッダー生成ツール設定の意味を確認してから使う

基本設定から始め、各ヘッダーの意味と公開前の注意点を確認できます。

セキュリティヘッダー生成ツール

現在の選択

プリセット: 基本の草案

Referrer-Policy: クロスオリジンで厳格

Permissions-Policy: カメラ · 同一オリジン (self) / マイク · 同一オリジン (self) / 位置情報 · 同一オリジン (self)

HSTS: 出力しない

CORSの例: 出力しない

応答ヘッダー

Referrer-Policy: strict-origin-when-cross-origin
Permissions-Policy: camera=(self), microphone=(self), geolocation=(self)

設定はこのブラウザー内で処理し、対象サイトへリクエストを送りません。

オプション

Permissions-Policy

HSTS

HSTSはHTTPS応答でのみ有効です。まず短い期限で試し、preloadには一年以上と全サブドメインの準備が必要です。

CORSの例

*またはパスを含まない正確なhttp(s)オリジンを入力します。資格情報を使う場合は*を選べません。

ヘッダーの説明

  • Referrer-Policy: strict-origin-when-cross-origin

    選んだ値がブラウザーから送るRefererの詳細を決めます。

  • Permissions-Policy: camera=(self), microphone=(self), geolocation=(self)

    空の許可リストは機能を止め、selfは同一オリジンに限ります。

注意点

この草案に警告はありません。

2件のヘッダーを生成・注意点0件

既存の設定例をそのまま貼ると、どの値がカメラを止め、どれがサブドメインに効くのか分かりにくくなります。セキュリティヘッダー生成ツールは選択と出力を一対一で表示します。

このページはサイトへ接続しません。HTTPセキュリティヘッダーの草案を作る場であり、実際のHTTPS応答や証明書の状態は公開後に確認してください。 レスポンスヘッダーの例として、セキュリティヘッダー設定の違いを比較できます。

セキュリティヘッダー生成ツールを使う理由

有効にした項目だけを出力し、影響の大きい値を見落とさないための草案です。

ポリシーを分けて読める

セキュリティヘッダー生成ツールはReferrer-PolicyとPermissions-Policyを別々に表示します。プライバシー設定へ変えてもHSTSやCORSは勝手に有効になりません。

参照元ポリシーとブラウザー機能の許可設定が別々の応答ヘッダーになる図

リスクのある設定は任意

HSTS設定は短い期限から試せます。CORSは具体的なオリジンを使い、資格情報とワイルドカードの衝突を止めます。

HSTSとCORSのスイッチを経て応答ヘッダーの草案に追加される図

公開前に見落としやすい三つの確認

01

プリセットの変更範囲を見る

基本設定では三つの機能をselfにします。プライバシー設定はnoneへ変えますが、HSTSとCORSの独立設定は保持します。

  • プリセットは安全性の採点ではありません。
02

HSTSの段階的な導入を考える

初期値は300秒で、既定では無効です。preloadには一年以上のmax-ageとincludeSubDomainsが必要です。

  • preloadの文字列だけではリスト登録されません。
03

古い結果を持ち出さない

自動生成は変更後350msで更新します。手動に切り替えるとCtrl/Cmd+Enterで実行でき、未更新の結果はコピーできません。

  • サンプルと消去はプレビュー後に適用し、一度だけ戻せます。

四種類の応答ポリシーを一か所で

参照元情報の制御

Referrer-Policyの四つの値から選択し、外部リンクへ送るRefererの範囲を調整します。

機能ごとの許可

カメラ、マイク、位置情報を個別にselfまたはnoneへ設定します。

任意のHSTSとCORS

HTTPS専用の期限と、CORSヘッダーのオリジン例を必要なときだけ追加します。

出力だけでは証明できないこと

万能な設定はありません
セキュリティヘッダー生成ツールはサイトのスクリプトやサブドメインを知らず、CSPや安全性の点数は作りません。
HSTSは後の接続にも残る
有効なHTTPS応答で受けた設定はブラウザーに記憶されます。未準備のサブドメインにはincludeSubDomainsを付けないでください。
CORSは認証ではありません
許可オリジンはブラウザーの応答読取りを制御するだけで、サーバー側の認可やCSRF対策を代替しません。

セキュリティヘッダー生成ツールのよくある質問

Strict-Transport-Securityとは何ですか?

Strict-Transport-Securityは、ブラウザーに後続の接続でHTTPSを使わせる応答ヘッダーです。有効なHTTPS応答で送る必要があります。

max-ageの値は何を指定すればよいですか?

最初は短いmax-ageで運用を確認し、証明書やすべての経路が整ってから延ばしてください。このページの初期値は300秒です。

preloadオプションを有効にするとどうなりますか?

preloadの資格条件を満たすヘッダーを作っても自動登録されません。別途申請し、取り消しには時間がかかる可能性があります。

なぜブラウザの許可プロンプトが一度も出なかったのですか?

Permissions-Policyでcamera=()などを選ぶと、その機能を許可しないためブラウザーの許可ダイアログも出ない場合があります。selfとの違いを確認してください。

Referrer-Policyを設定すると、そのページへの外部リンクからのアクセス解析に影響しますか?

Referrer-Policyによって外部サイトへ渡す参照元情報が減るため、リンク元を使う分析に影響する可能性があります。選択値を実際のアクセス解析で確かめてください。

問題がありますか?

セキュリティヘッダー生成ツールで草案を作る

設定を変えたら警告を読み、更新済みの応答ヘッダーだけを出力してください。