CSP: style-src-attr
CSP: style-src-attr
Директива HTTP Content-Security-Policy (CSP) style-src-attr задаёт допустимые источники для встроенных стилей, применяемых к отдельным элементам DOM.
Директива не устанавливает допустимые источники для элементов <style> и элементов <link> с rel="stylesheet". Они устанавливаются с помощью style-src-elem (и допустимые источники всех стилей могут быть заданы с помощью style-src).
| Версия CSP | 3 |
|---|---|
| Тип директивы | Директива Fetch |
default-src обратная совместимость | Да. Если эта директива отсутствует, пользовательский агент будет искать директиву |
Синтаксис
Для политики style-src-attr можно разрешить один или несколько источников:
Content-Security-Policy: style-src-attr <source>; Content-Security-Policy: style-src-attr <source> <source>;
style-src-attr может использоваться совместно с style-src:
Content-Security-Policy: style-src <source>; Content-Security-Policy: style-src-attr <source>;
Источники
<source> может быть любым из значений, перечисленных в Значения источников CSP.
Обратите внимание, что тот же набор значений может использоваться во всех директивах fetch (и в ряде других директив).
Примеры
Случаи нарушения
Учитывая этот заголовок CSP:
Content-Security-Policy: script-src-attr 'none'
…встроенный стиль, применяемый к элементу ниже, не будет применён:
<div style="display:none">Foo</div>
Политика также заблокирует любые стили, применённые в JavaScript, путём непосредственного задания атрибута style или задания cssText:
document.querySelector('div').setAttribute('style', 'display:none;'); document.querySelector('div').style.cssText = 'display:none;';
Свойства стилей, задаваемые напрямую на свойстве style элемента, не будут заблокированы, позволяя пользователям безопасно изменять стили через JavaScript:
document.querySelector('div').style.display = 'none';
Обратите внимание, что использование JavaScript может быть независимо заблокировано с помощью директивы CSP script-src.
Спецификации
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox для Android | Opera Android | Safari на IOS | Samsung Internet | |
style-src-attr |
75 |
79 |
105
предварительный просмотр
|
Нет |
62 |
Нет |
75 |
75 |
Нет |
54 |
Нет |
11.0 |
См. также
© 2005–2022 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/style-src-attr