Проблемы с политикой безопасности контента при вызове функций и отображении изображений - PullRequest
1 голос
/ 11 декабря 2011

Не понимаю влияния политики, указанной на моем сайте 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 *;", но тогда изображения вообще не показываются. Изображения расположены на одном сервере?

Пожалуйста, помогите мне понять.

1 Ответ

1 голос
/ 13 декабря 2011

Хорошо, теперь я думаю, что понял; -)

img-src 'self';работает сейчас, как и ожидалось - думаю, что мне не хватало ''

Невозможно вызывать какие-либо функции в части HTML, когда CSP установлен.Я должен назначить обработчики событий onclick и т. Д. В коде JavaScript.Я полагал, что можно вызвать функцию JS из части HTML - это не так.

Довольно много работы для поддержки CSP на самом деле!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...