Подтвердить что ты не робот

Политика безопасности содержимого: параметры страницы блокировали загрузку ресурса

Я использую captcha на загрузке страницы, но он блокируется из-за некоторой причины безопасности

Я столкнулся с проблемой:

    Content Security Policy: The page settings blocked the loading 
    of a resource at 
    http://www.google.com/recaptcha/api.js?onload=myCallBack&render=explicit 
    ("script-src http://test.com:8080 'unsafe-inline' 'unsafe-eval'").

Я использовал следующие js и метатеги:

<meta http-equiv="Content-Security-Policy" content="default-src *; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval'">
<script src="http://www.google.com/recaptcha/api.js?onload=myCallBack&render=explicit" async defer></script>
4b9b3361

Ответ 1

Вы сказали, что можете загружать скрипты только с вашего собственного сайта (самостоятельно). Затем вы попытались загрузить скрипт с другого сайта (www.google.com), и, поскольку вы ограничили это, вы не можете. В этом весь смысл политики безопасности контента (CSP).

Вы можете изменить свою первую строку на:

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

Или же, возможно, стоит полностью удалить эту строку, пока вы не узнаете больше о CSP. Ваш текущий CSP в любом случае довольно слаб (допускает использование unsafe-inline, unsafe-eval и default-src по default-src *), так что, вероятно, не стоит добавлять слишком много значения, чтобы быть честным.

Ответ 2

Наличие аналогичного типа ошибки. Сначала я попытался добавить метатеги в код, но это не сработало.

Я обнаружил, что на веб-сервере nginx у вас может быть параметр безопасности, который может блокировать запуск внешнего кода:

#security directives
server_tokens off;
add_header X-Frame-Options SAMEORIGIN;
add_header X-Content-Type-Options nosniff;
add_header X-XSS-Protection "1; mode=block";
add_header Content-Security-Policy "default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval'  https://ajax.googleapis.com  https://ssl.google-analytics.com https://assets.zendesk.com https://connect.facebook.net; img-src 'self' https://ssl.google-analytics.com https://s-static.ak.facebook.com https://assets.zendesk.com; style-src 'self' 'unsafe-inline' https://assets.zendesk.com; font-src 'self' https://fonts.gstatic.com  https://themes.googleusercontent.com; frame-src https://player.vimeo.com https://assets.zendesk.com https://www.facebook.com https://s-static.ak.facebook.com https://tautt.zendesk.com; object-src 'none'";

Проверьте Content-Security-Policy, вам может понадобиться добавить ссылку на источник.

Ответ 3

Поскольку этот вопрос является первым результатом поиска этого сообщения об ошибке в Google, я добавлю его сюда.

Когда мой проект ASP.NET Core Angular запущен в Visual Studio 2019, иногда я получаю следующее сообщение об ошибке в консоли Firefox:

Политика безопасности контента. Настройки страниц блокировали загрузку ресурса при подключении ("default-src").

В Chrome вместо этого появляется сообщение об ошибке:

Не удалось загрузить ресурс: сервер ответил со статусом 404()

В моем случае это не имело никакого отношения к моей Политике безопасности контента, а было просто результатом ошибки TypeScript с моей стороны.

Проверьте окно вывода IDE на наличие ошибки TS, например:

> ERROR in src/app/shared/models/person.model.ts(8,20): error TS2304: Cannot find name 'bool'.
>      
> i 「wdm」: Failed to compile.

Ответ 4

Вы можете отключить их в своем браузере. Fire Fox

Введите about:config в адресную строку FireFox, найдите security.csp.enable и установите для него значение false

Chrome Вы можете установить расширение под названием " Disable Content-Security-Policy чтобы отключить CSP.