web-dev-qa-db-ja.com

スクリプトを含むコンテンツセキュリティポリシー

このスクリプトを含める必要があります https://apis.google.com/js/api:client.js 私のウェブサイトに。 Googleでは、Chromeは正常に動作しますが、Firefox(およびIE )エラーが発生します:


コンテンツセキュリティポリシー:script-src内の「「unsafe-inline」」を無視:「strict-dynamic」が指定されています

コンテンツセキュリティポリシー:script-src内の「https:」を無視:「strict-dynamic」が指定された

コンテンツセキュリティポリシー:script-src内の「http:」を無視:「strict-dynamic」が指定されました


メタタグ内のコンテンツセキュリティポリシーヘッダーを変更しようとしましたが、機能しませんでした。

私はこれらすべてを試しました:

<meta http-equiv="Content-Security-Policy" content="default-src 'none'; img-src 'self'; script-src 'self' apis.google.com; style-src 'self';">

<meta http-equiv="Content-Security-Policy" content="default-src 'self' apis.google.com">

<meta http-equiv="Content-Security-Policy" content="script-src 'self' 'unsafe-eval' https://*.google.com; object-src 'self' 'unsafe-eval'"> 

<meta http-equiv="Content-Security-Policy" content="script-src 'self' 'unsafe-eval' apis.google.com;">
23
Mattia Billa

私はこの質問が1年前のものであることを知っていますが、この問題を検索するときに最初に出てくるものの1つであり、まだ正しい答えがありません。

わかります。私はプロダクションで原始的なコンソールを見るのが好きな人の一人なので、このようなものは私を夢中にさせますが、実際にそれについてできることは何もありません。 Firefoxはコンソールに警告を表示すべきではないときに報告しています。

MozillaGoogle の両方が、CSP3の「strict-dynamic」にフォールバックCSP1ポリシーを含めることを推奨しています。 「strict-dynamic」を理解するブラウザはCSP1ポリシーを無視し、認識しない「strict-dynamic」を無視しないブラウザはCSP1ポリシーに従う必要があります。有効な単語はignoreです。本当に無視することには、あなたが無視していることを告知しないことが含まれます。

6
Peter Rowntree

HTMLではなく、サーバーのHTTPヘッダーでCSPヘッダーを編集する必要があります。サーバーを制御できますか?

HTTPヘッダーが優先されるため、メタタグなどは無視されます。最初に修正してください。

2
Rainb