Rails по умолчанию 5.2.1.1. Политика безопасности контента (CSP) "style-src 'unsafe-inline'" нарушается - PullRequest
0 голосов
/ 29 ноября 2018

что я хочу сделать

Просто изучение Rails - попытка добавить забавный стиль и скрипт в проект по умолчанию rails new appname.Следуйте руководству по реализации MDB здесь , что означает добавление стилей и сценариев в vendor/assets/(stylesheets or javascripts) и включение файлов в конвейер ресурсов.

проблема заключается в

Bootstrap, например, включается в разметку в своем собственном маленьком теге <link>, но блокируется CSP, который говорит:

Refused to load the stylesheet 'http://0.0.0.0:3000/assets/bootstrap.self-084....css?body=1'
because it violates the following Content Security Policy directive: "style-src 'unsafe-inline'".

что не помогло

Я попытался определить, где точно определен CSP, но для такого коричневого носа, как я, не так легко ориентироваться в этом довольно плотном эшафоте.Пробовал перебирать в /vendor/bundle/ruby/2.3.0/gems/actionpack-5.2.1.1/lib/action_dispatch/http/content_security_policy.rb и 'vendor/bundle/ruby/2.3.0/gems/railties-5.2.1.1/lib/rails/application_controller.rb' ->, но безуспешно.

Пробовал перезаписать content_security_policy внутри моего app/asstes/controllers/application_controller.rb класса ApplicationController , вот так:

content_security_policy do |p|
  p.style_src "self"
  p.script_src "self"
end

, но сообщение об ошибке в консоли остается прежним.

Я знаю о хромированных плагинах, которые можно использовать для отключения и тестирования CSP, но похоже на читерство.

вопрос

Как настроить параметры заголовка CSP, чтобы приложение Rails учитывало активы, переданные по активам?

Заранее спасибо

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