Меня смущает Политика безопасности контента Jenkins.
Я знаю эти сайты:
У меня есть html-страница, показанная через плагин Jenkins Clover. Эта html-страница использует встроенный стиль, например:
<div class='greenbar' style='width:58px'>
Элемент div визуализирует индикатор выполнения. Использование конфигурации Jenkins CSP по умолчанию приводит к следующему результату: Progressbar_FAIL
Результат, который я хочу получить, выглядит так: Progressbar_WORKS
Я попытался ослабить правила CSP, добавляя различные комбинации параметров (script-src, style-src) с разными уровнями (self, unsafe-inline, ..), но ничего не работает.
Итак, мои вопросы на данный момент:
- Где мне указать конфигурацию CSP?
- Можно ли использовать встроенные стили?
- Где должны быть расположены стили? Мои таблицы стилей css расположены локально на сервере Jenkins.
- Как лучше всего "удовлетворить" встроенный стиль и правила CSP?
Обновить
1. Попробуйте: -Dhudson.model.DirectoryBrowserSupport.CSP="default-src 'self'
в файле jenkins.xml. Затем возникает следующая ошибка:
Отказался от применения встроенного стиля, поскольку он нарушает следующую директиву политики безопасности содержимого: "default-src 'self'". Для включения встроенного выполнения требуется ключевое слово 'unsafe-inline', хэш ('sha256-') или одноразовый номер ('nonce -...'). Также обратите внимание, что style-src не был явно установлен, поэтому default-src используется в качестве запасного варианта.
2. Попробуйте -Dhudson.model.DirectoryBrowserSupport.CSP="default-src 'self'; style-src 'self'
в файле jenkins.xml. Затем возникает следующая ошибка:
Отказался от применения встроенного стиля, поскольку он нарушает следующую директиву политики безопасности содержимого: "style-src 'self'". Для включения встроенного выполнения требуется ключевое слово 'unsafe-inline', хэш ('sha256-') или одноразовый номер ('nonce -...')
Я понимаю, что эта попытка не может решить мою проблему, потому что default-src включает style-src
3. Попробуйте -Dhudson.model.DirectoryBrowserSupport.CSP="default-src 'self'; style-src 'unsafe-inline'
в файле jenkins.xml. Затем возникает следующая ошибка:
Отказался загрузить таблицу стилей s: //jenkins/andsomedir/stylesheet.css [его https: // ... не разрешено размещать более двух ссылок :(], потому что это нарушает следующую директиву политики безопасности контента: "style-src 'unsafe-inline' ".