Content-Security-Policy ヘッダージェネレーター

Content-Security-Policy ヘッダーをディレクティブごとに構築し、ソースチップとコピーできる meta・nginx・Apache のスニペットを得られます。すべてブラウザ内で動作します。

CSP ジェネレーターは完全にブラウザ内で動作します。Content-Security-Policy を構築するために入力したディレクティブ・ホスト・スキームは端末から外に出ることはなく、ArrayKit にアップロードされることもありません。

Cache-Control ヘッダージェネレーターを開く

CSP ジェネレーター について

CSP ジェネレーターは、Content-Security-Policy ヘッダーを一度に 1 つのディレクティブずつ構築します。default-src、script-src、style-src、img-src、connect-src、font-src、frame-src などを、'self'、'none'、'unsafe-inline'、data:、https: のようなソースチップをクリックして、あるいは cdn.example.com のようなカスタムホストを入力して埋めます。キーワードソースはツールがシングルクォートで囲み、ホストやスキームは裸のまま残すので、ポリシーは常に有効です。空のディレクティブは自動で落とされ、すべてが正規の順序で出力されます。report-only トグルを反転すれば、強制する前にモニターモードでポリシーをテストでき、その後、生のヘッダー、HTML メタタグ、貼り付けるだけの nginx と Apache のスニペットをコピーできます。XSS やクリックジャッキングに対してサイトを堅牢化する開発者のために、ブラウザ内で動作 — 構築したポリシーが端末から外に出ることはありません。

機能

CSP ジェネレーター の使い方

  1. ソースチップをクリックするかホストを入力し、必要な各ディレクティブにソースを追加する
  2. 不要なディレクティブは空のままにする — 出力から落とされる
  3. 強制前に違反を監視したい場合は Report-Only を切り替える
  4. Content-Security-Policy ヘッダーの値、または meta・nginx・Apache のスニペットをコピーする

入力

default-src: 'self'
script-src: 'self' https:
img-src: 'self' data:
object-src: 'none'

出力

Content-Security-Policy: default-src 'self'; script-src 'self' https:; img-src 'self' data:; object-src 'none'

'self' のようなキーワードはクォートで囲まれ、https: や data: のようなスキームは裸のままです。

よくあるエラーとトラブルシューティング

よくある質問

この CSP ジェネレーターは何を生成しますか?
選んだディレクティブとソースから完全な Content-Security-Policy ヘッダーの値を構築し、その後、生のヘッダー、HTML メタタグ、そして設定に貼り付けられる nginx と Apache の add_header スニペットを提供します。
どの CSP ソースがシングルクォートを付けられ、どれが付かないのですか?
'self'、'none'、'unsafe-inline'、'unsafe-eval'、'strict-dynamic' のようなキーワードソースと、nonce やハッシュはシングルクォートで囲まれます。https:、data:、cdn.example.com のようなホストやスキームは裸のまま残されます。ツールがそれらを正しくクォートします。
report-only トグルは何のためのものですか?
ヘッダー名を Content-Security-Policy-Report-Only に切り替えます。これは何もブロックせずに違反を報告します。稼働中のサイトで新しいポリシーを段階導入し、強制する前にコンソールを見るのに使ってください。
ポリシー全体を CSP メタタグとして配信できますか?
ほとんどの場合はできます — ツールは強制ポリシーの <meta http-equiv> タグを出力します。ただし frame-ancestors、report-uri、report-to、sandbox はメタタグでは無視されるので、ポリシーがそれらに依存する場合は HTTP ヘッダーのスニペットを使ってください。
なぜヘッダーは、入力しなかったディレクティブを省くのですか?
ソースのないディレクティブは、出力をきれいで有効なまま保つために落とされます。default-src は空のままにした任意の fetch ディレクティブのフォールバックとして働くので、異なるものだけを上書きすればよいのです。
CSP ヘッダーを構築すると、私のホストはどこかに送られますか?
いいえ。CSP ジェネレーターは完全にブラウザ内で動作します。入力したディレクティブとホストは端末上に留まり、ArrayKit にアップロードされることはありません。

関連ツール

すべての ArrayKit ツール