コンテンツ セキュリティ ポリシー(CSP)は、Google の
ウェブページ内で読み込みが許可されるリソースやスクリプトを制限し、
実行されます。CSP を有効にするには、Content-Security-Policy
ヘッダーを
ウェブサーバーからの HTTP レスポンス。
CSP を構成する標準的な方法は 2 つあります。
ページにリソースを挿入できるドメインの許可リストを指定します。
ランダムなノンスを指定します。このノンスを使用して、ページ上のリソースをマークする必要があります。 できます。この手法は厳格な CSP と呼ばれています。
Google パブリッシャー タグ(GPT)が使用するドメインが 厳密な CSP(オプション 2)のみがサポートされています。この方法により、 古くなったためにドメインのローリング リストが維持され、 サイトをご覧ください。
GPT で CSP を設定する
ウェブサーバーで CSP を有効にします。
厳格な CSP の採用に記載されている手順に沿って、 CSP ヘッダーを設定し、そのノンスをページ上のすべてのスクリプトタグに適用する (
gpt.js
を含む)。GPT では特に次の機能がサポートされています。 CSP ディレクティブ:Content-Security-Policy: object-src 'none'; script-src 'nonce-{random}' 'unsafe-inline' 'unsafe-eval' 'strict-dynamic' https: http:; base-uri 'none'; report-uri https://your-report-collector.example.com/
ユースケースに適している場合は、制限の緩いポリシーを選択できます。さらに表示 制限付きポリシーが予告なく違反することがあります。
クロスドメイン レンダリングを有効にします。
広告の iframe で、許可されていない可能性のある外部リソースを読み込むことができる CSP同じドメインの iframe はトップレベル ウィンドウの CSP を継承し、 GPT ではクリエイティブのコンテンツを制御できない(同一ドメイン) CSP ヘッダーを使用すると、クリエイティブが適切に機能しなくなります。
すべてのクリエイティブでクロスドメイン レンダリングを有効にするには、次のコマンドを実行します。
googletag.pubads().setForceSafeFrame(true)
スロットを読み込みません<!doctype html> <html> <head> <meta charset="utf-8"> <title>Hello GPT</title> <script src="https://securepubads.g.doubleclick.net/tag/js/gpt.js" nonce="KC7tcz53FHqumKP1" async></script> <script nonce="KC7tcz53FHqumKP1"> window.googletag = window.googletag || {cmd: []}; googletag.cmd.push(function() { googletag.pubads().setForceSafeFrame(true); }); </script> </head>
テスト
最初にポリシーをテストすることをおすすめします。それには、
Content-Security-Policy-Report-Only
ヘッダーを
Content-Security-Policy
。ヘッダーで違反が報告されますが、
追加できます