Заголовки: CSP.script-src-elem
Content-Security-Policy: директива script-src-elem
Базовая поддержка Широко доступно
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и в разных версиях браузеров. Она доступна во всех браузерах с декабря 2022 года.
Директива Content-Security-Policy (CSP) в HTTP script-src-elem задаёт допустимые источники для элементов <script> JavaScript.
Эта директива задаёт допустимые источники только для элементов <script> (как запросов скриптов, так и блоков). Она не распространяется на другие источники JavaScript, которые могут запускать скрипты, например на встроенные обработчики событий скриптов (onclick), методы выполнения скриптов, доступные при прохождении проверки "unsafe-eval", и таблицы стилей XSLT. (Допустимые источники для всех источников скриптов JavaScript можно задать с помощью script-src, а только для встроенных обработчиков скриптов — с помощью script-src-attr.)
| Версия CSP | 3 |
|---|---|
| Тип директивы | Директива выборки |
default-src — резервная директива | Да. Если эта директива отсутствует, пользовательский агент проверит наличие директивы script-src, а если отсутствуют обе, будет использовать директиву default-src. |
Синтаксис
Content-Security-Policy: script-src-elem 'none'; Content-Security-Policy: script-src-elem <source-expression-list>;
Эта директива может иметь одно из следующих значений:
'none'-
Ресурсы этого типа загружать нельзя. Одинарные кавычки обязательны.
<source-expression-list>-
Разделённый пробелами список значений выражений источника. Ресурсы этого типа можно загружать, если они соответствуют любому из указанных выражений источника. Для этой директивы применимы любые значения выражений источника, перечисленные в разделе Синтаксис директивы выборки, за исключением
'unsafe-hashes'.
script-src-elem можно использовать вместе с script-src:
Content-Security-Policy: script-src <source>; Content-Security-Policy: script-src-elem <source>;
Примеры
>Случай нарушения
Для следующего заголовка CSP:
Content-Security-Policy: script-src-elem https://example.com/
…следующий скрипт блокируется и не будет загружен или выполнен:
<script src="https://not-example.com/js/library.js"></script>
Спецификации
Совместимость с браузерами
| Компьютеры | Мобильные устройства | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome для Android | Firefox для Android | Opera для Android | Safari для iOS | Samsung Internet | WebView для Android | WebView для iOS | |
script-src-elem |
75 | 79 | 108 | 62 | 15.4 | 75 | 108 | 54 | 15.4 | 11.0 | 75 | 15.4 |
См. также
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Headers/Content-Security-Policy/script-src-elem