1

私のサイトhttp://pcrypt.org/dev/groups.phpで指定したポリシーの効果がわかりません。

header("X-Content-Security-Policy: allow 'self'; img-src *; script-src 'self'; frame-src 'self'; style-src 'self';");

インライン スクリプトを許可しない場合、関数を呼び出すにはどうすればよいですか。このページで、サーバー上の js ファイルにある関数を onload (body onload='initialize()') から呼び出そうとしましたが、次のエラーが生成されました (デンマーク語で申し訳ありません)。

Advarsel: CSP: Directive "inline script base restriction" violated
Kildefil: http://pcrypt.dk/dev/groups.php
Linje: 0
Kildekode:
onload attribute on UNKNOWN element

"options inline-script;"追加で正常に動作します

initialize()また、画像が読み込まれるのを待たずに DOM の準備ができたときに呼び出すのが好きですが、CSP を使用してこれを行うにはどうすればよいですか?

また、必要だと思います"img-src *;"が、画像がまったく表示されません。画像は同じサーバーにありますか?

理解するのを手伝ってください。

4

1 に答える 1

2

さて、私はそれを手に入れたと思います;-)

img-src '自己'; 期待どおりに動作するようになりました - 私が行方不明だったと思います ''

CSP が配置されている場合、HTML 部分で任意の種類の関数を呼び出すことはできません。javascript コードで onclick イベント ハンドラなどを割り当てる必要があります。HTML 部分から JS 関数を呼び出すことは可能だと信じていましたが、そうではありませんでした。

実際に CSP をサポートするにはかなりの作業が必要です。

于 2011-12-12T20:58:24.147 に答える