私はこの問題をしばらく受け止めましたが、現在では本当の問題になっています。PHP経由でコンテンツセキュリティポリシーヘッダーを変更できません
私は数年前にコンテンツセキュリティポリシーを実装しました。私はヘッダを設定するためにPHPを使用します。ここに私のヘッダーがあります。
コンテンツセキュリティポリシー:デフォルト-srcの '自己' www.googleadservices.com ssl.google-analytics.com www.google-analytics.com googleads.g.doubleclick.net
これは完璧に動作します。しかし、私がそれを何らかの方法で変更した場合、送信されるヘッダーは同じです。たとえ私がコードを削除しても、サーバーはそれをとにかく送信します。
私はブラウザがこれをキャッシュするかもしれないと思ったが、新鮮なブラウザはオンラインヘッダチェッカーと同じことをする。私は、Webサーバーがこれをキャッシュするかもしれないと思ったが、他のヘッダー・ディレクティブの変更は正常に機能する。
私は、これは奇妙な問題ではありませんし、どちらもグーグルもSO検索は何も上がっているWindowsのWebサーバー上のPHP 5.6.31 NTS 2008
でIIS7.5を使用しています。
コード: 旧コード:
header("Content-Security-Policy: default-src 'self' www.googleadservices.com
ssl.google-analytics.com www.google-analytics.com googleads.g.doubleclick.net
");
新しいコード:
header("Content-Security-Policy: default-src 'self' www.googleadservices.com
ssl.google-analytics.com www.google-analytics.com googleads.g.doubleclick.net sealserver.trustwave.com;
style-src 'self' fonts.googleapis.com; object-src 'none';
");
結果のヘッダ何で。
Content-Security-Policy: default-src 'self' www.googleadservices.com
ssl.google-analytics.com www.google-analytics.com
googleads.g.doubleclick.net
いずれのヒントもあります。
'iis'設定ファイルを確認しましたか? [この投稿](https://stackoverflow.com/questions/37992225/config-your-iis-server-to-use-the-content-security-policy-header/37996726#37996726)から、CSPを定義することができますあなたの設定ファイルにあります。新しいCSPをオーバーライドしている元のCSPを使用していた可能性があります。 –
私はCSPヘッダーをどこにも設定していませんが、とにかくチェックしています。設定はweb.configとC:\ Windows \ System32 \ inetsrv \ configのいずれのファイルにもありません。私たちは、インラインのjavascriptを持つパスワード保護されたページをいくつか持っているので、私はCSPサイト全体を使用することを避けました。私は見ていきます。 –
参考までに、私のhttpヘッダーはIISの設定内に設定されています。 X-フレーム:同じオリジン X-Permitted-Cross-Domain:マスタのみ X-Powered-By:Slurm X-UA互換:IE-Edge X-XSS-保護:1:モードブロック –