HTTPセキュリティヘッダ解説
いくつかの応答ヘッダは、ブラウザに防御的な振る舞いを指示します。追加コストは小さく、攻撃のクラスごと遮断できます。
必須項目
| ヘッダ | 推奨値 | 防ぐもの |
|---|---|---|
Strict-Transport-Security |
max-age=63072000; includeSubDomains |
SSLストリッピング/ダウングレード |
Content-Security-Policy |
用途に合わせた許可リスト | XSS・注入 |
X-Content-Type-Options |
nosniff |
MIMEスニッフィング |
X-Frame-Options |
SAMEORIGIN |
クリックジャッキング |
Referrer-Policy |
strict-origin-when-cross-origin |
リファラ漏えい |
Permissions-Policy |
不要機能を無効化 | API悪用 |
つまずきやすい点
- HSTSはHTTPSでのみ機能します。 HTTP応答に設定しても無意味で、TLS配信になるまでブラウザは無視します。適切な TLSバージョン とセットで設定しましょう。
- CSPは強力だが壊しやすい。 まず
Content-Security-Policy-Report-Onlyで展開し、レポートを見てから強制します。最近のCSPはframe-ancestorsでX-Frame-Optionsを置き換えつつあります。 - 信頼の順序: ヘッダは堅牢化であり、安全でないコードの修正ではありません。
サイトを確認する
当サイトの HTTPセキュリティヘッダ診断 にURLを通すと、設定済み/未設定のヘッダと、各項目の短い対処法が分かります。続いて証明書自体を SSL/TLSチェッカー で確認しましょう。
メモ: エッジ(リバースプロキシ/CDN)で設定すれば、背後の全アプリが一貫して継承します。