Я запутался в политике безопасности контента 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-styles расположены локально на сервере Jenkins.
- Какой лучший способ получить встроенный стиль и правила CSP "удовлетворены".
Обновить
1. Попробуйте:
-Dhudson.model.DirectoryBrowserSupport.CSP="default-src 'self'
в файле jenkins.xml. Затем возникает следующая ошибка:
Отказывается применять встроенный стиль, поскольку он нарушает следующие Директива политики безопасности содержимого: "default-src" self ". Либо ключевое слово" небезопасное-встроенное ", хеш (" sha256- ") или" nonce" ('nonce -...') требуется для включения встроенного исполнения. Отметим также, что 'style-src' явно не задан, поэтому 'default-src' используется как запасной вариант.
2. Попробуйте
-Dhudson.model.DirectoryBrowserSupport.CSP="default-src 'self'; style-src 'self'
в файле jenkins.xml. Затем возникает следующая ошибка:
Отказывается применять встроенный стиль, поскольку он нарушает следующие Политика политики безопасности содержимого: "style-src" self ". Либо ключевое слово" небезопасное-встроенное", хэш ('sha256-'), или nonce ('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" небезопасно-встроенный ".