ホームページ > ウェブフロントエンド > jsチュートリアル > コンテンツ セキュリティ ポリシー (CSP) はどのように機能するか: 包括的なガイド?

コンテンツ セキュリティ ポリシー (CSP) はどのように機能するか: 包括的なガイド?

Barbara Streisand
リリース: 2024-11-11 06:55:03
オリジナル
658 人が閲覧しました

How Does Content Security Policy (CSP) Work: A Comprehensive Guide?

CSP の仕組み: コンテンツ セキュリティ ポリシーの包括的なガイド

概要:

コンテンツセキュリティ ポリシー (CSP) は、悪意のあるコンテンツやクロスサイト スクリプティングから Web サイトを保護する強力なセキュリティ メカニズムです。 (XSS) 攻撃。 CSP は、ブラウザがリソースを読み込めるソースを定義することで、信頼できないコンテンツが Web サイトに侵入するリスクを効果的に軽減します。

Content-Security-Policy HTTP ヘッダーについて:

Content-Security-Policy タグは、さまざまなタイプのコンテンツをロードするための有効なソースを指定するディレクティブで構成されます。各ディレクティブの後には、許可されるソースを定義するパラメータのスペース区切りのリストが続きます。

1.複数のソースの許可:

複数のソースを許可するには、ディレクティブの後にそれらをリストするだけです:

content="default-src https://example1.com/js/ https://example2.com/js/"
ログイン後にコピー

2.さまざまなディレクティブの使用:

一般的なディレクティブには次のものがあります:

  • default-src: ほとんどのリソースをロードするためのデフォルト ポリシー
  • script-src: JavaScript の有効なソースfiles
  • style-src: CSS の有効なソースfiles
  • img-src: 画像の有効なソース
  • connect-src: AJAX リクエストまたは WebSocket の有効なターゲット

3.ディレクティブの結合:

セミコロンを使用して複数のディレクティブを単一のメタタグに結合できます:

content="default-src 'self' https://example.com/js/; style-src 'self'"
ログイン後にコピー

4.ポートの処理:

非標準ポートは明示的に指定する必要があります:

content="default-src https://ajax.googleapis.com:443 https://example.com:123/free/stuff/"
ログイン後にコピー

5.異なるプロトコルの許可:

標準プロトコルはデフォルトで許可されます。非標準プロトコル (WebSocket など) を許可するには、connect-src:

content="default-src 'self'; connect-src ws://"
ログイン後にコピー

6 を使用します。許可ファイル プロトコル (file://):

ファイル システム パラメーターを使用します:

content="default-src filesystem"
ログイン後にコピー

7.インライン スタイルとスクリプトの許可:

unsafe-inline を使用したインライン コンテンツの許可:

content="script-src 'unsafe-inline'; style-src 'unsafe-inline'"
ログイン後にコピー

8. Eval の許可:

eval() の許可には unsafe-eval パラメータが必要です:

content="script-src 'unsafe-eval'"
ログイン後にコピー

9。 「self」の意味:

「self」は、コンテンツ ポリシーを含むファイルと同じスキーム、ホスト、ポートを指します。これには、localhost またはローカル ファイルシステムのリソースは含まれません。

ワイルドカード ディレクティブの危険性:

content="default-src *" は、許可する便利な方法のように思えるかもしれません。すべてのソースに対して、インライン化または評価のアクセス許可は暗黙的に付与されません。サイトをすべてのコンテンツに完全に公開するには、次を使用します:

content="default-src * 'unsafe-inline' 'unsafe-eval'"
ログイン後にコピー

結論:

CSP は、XSS 攻撃のリスクを大幅に軽減できる強力なセキュリティ ツールです。さまざまなディレクティブとパラメータを理解することで、Web サイトにカスタム セキュリティ ポリシーを効果的に適用できます。 CSP は安全なコーディングの代替としてではなく、潜在的な脅威に対する追加の保護層として使用されるべきであることを覚えておくことが重要です。

以上がコンテンツ セキュリティ ポリシー (CSP) はどのように機能するか: 包括的なガイド?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート