Я внедряю заголовок CSP на веб-сайте, который должен динамически загружать некоторые скрипты по разным причинам (в основном плагины).Это легко достигается определением script-src с использованием 'строгого-динамического' вместе с хэшем / одноразовым номером для нединамических сценариев.
В рекомендациях везде предлагается также включить некоторые высокоуровневые источники / схемы и 'небезопасныеinline 'как запасной вариант, если браузер не поддерживает CSPv3 и, следовательно, не поддерживает' строго-динамическую 'и динамическую загрузку:
script-src: 'strict-dynamic' 'sha256-somesortofhash...' https: 'unsafe-inline';
Этот резервный метод будет хорошо работать для браузеров, которые поддерживают толькоCSPv1:
- «строго-динамический» игнорируется (не распознается).
- значение хеш-функции игнорируется (не распознается).
- https: и «unsafe-inline»
Но, похоже, не работает для браузеров CSPv2:
- строгий-динамический игнорируется (не распознается).
- хэшзначение принудительно.
- https: принудительно.
- «unsafe-inline» игнорируется (из-за принудительного применения хэша).
Как определитьполитика с правильным резервом для браузеров CSPv2 также?