CSP: trusted-types
CSP: trusted-types
Экспериментально: Это экспериментальная технология
Перед использованием в продакшене тщательно проверьте таблицу совместимости браузеров.
Директива HTTP Content-Security-Policy (CSP) trusted-types Экспериментально инструктирует пользовательские агенты ограничить создание политик Trusted Types — функций, создающих несфальсифицированные, типизированные значения, предназначенные для передачи в DOM-уязвимости к XSS вместо строк.
Вместе с директивой require-trusted-types-for это позволяет авторам определять правила, которые защищают запись значений в DOM, тем самым уменьшая область уязвимости к DOM-XSS до небольших, изолированных частей кода веб-приложения, что облегчает их мониторинг и код-ревью. Эта директива объявляет список разрешенных имён политик Trusted Types, созданных с помощью trustedTypes.createPolicy из API Trusted Types.
Синтаксис
Content-Security-Policy: trusted-types; Content-Security-Policy: trusted-types 'none'; Content-Security-Policy: trusted-types <policyName>; Content-Security-Policy: trusted-types <policyName> <policyName> 'allow-duplicates';
- <policyName>
-
Допустимое имя политики состоит только из буквенно-цифровых символов или одного из "
-#=_/@.%". Звёздочка (*) в качестве имени политики инструктирует пользовательский агент разрешить любое уникальное имя политики ('allow-duplicates' может ещё больше ослабить это ограничение). 'none'-
Запрещает создание любых политик Trusted Type (то же самое, что и отсутствие любого <policyName>).
'allow-duplicates'-
Разрешает создание политик с именем, которое уже использовалось.
Примеры
// Content-Security-Policy: trusted-types foo bar 'allow-duplicates'; if (typeof trustedTypes !== 'undefined') { const policyFoo = trustedTypes.createPolicy('foo', {}); const policyFoo2 = trustedTypes.createPolicy('foo', {}); const policyBaz = trustedTypes.createPolicy('baz', {}); // Throws and dispatches a SecurityPolicyViolationEvent. }
Спецификации
| Спецификация |
|---|
| Trusted Types # trusted-types-csp-directive |
Совместимость браузеров
| Рабочие столы | Мобильные устройства | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | |
trusted-types |
83 |
83 |
Нет |
Нет |
69 |
Нет |
83 |
83 |
Нет |
Нет |
Нет |
13.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/trusted-types