Улучшить эту документацию Просмотреть исходный код $sanitizeProvider
- $sanitize
- провайдер в модуле ngSanitize
Обзор
Создаёт и настраивает экземпляр $sanitize.
Методы
-
enableSvg([flag]);
Включает подмножество svg, поддерживаемое очистителем.
Включив эту настройку без дополнительных мер предосторожности, вы можете подвергнуть своё приложение атакам с использованием click-jacking. В таких атаках очищенные элементы svg могут быть размещены вне содержащего элемента и отображены поверх других элементов на странице (например, ссылки для входа в систему). Такое поведение может привести к фишинговым инцидентам.
Чтобы защититься от этого, явно задайте
overflow: hiddenправило CSS для всех потенциальных тегов svg внутри очищенного содержимого:
.rootOfTheIncludedContent svg { overflow: hidden !important; }Параметры
Параметр Тип Описание flag (необязательно)booleanВключить или отключить поддержку SVG в очистителе.
Возвращаемое значение
boolean$sanitizeProviderВозвращает текущее значение конфигурации, если вызов осуществляется без аргумента, или self для цепочки, в противном случае.
-
addValidElements(elements);
Расширяет встроенные списки допустимых HTML/SVG-элементов, то есть элементов, которые считаются безопасными и не удаляются при очистке. Вы можете расширить следующие списки элементов:
-
htmlElements: Список элементов (имен тегов), которые расширяют текущий список безопасных HTML-элементов. Безопасные HTML-элементы не будут удалены во время очистки. Все остальные элементы будут удалены. -
htmlVoidElements: Это аналогичноhtmlElements, но помечает элементы как «пустые элементы» (аналогично HTML пустым элементам). Эти элементы не имеют закрывающего тега и не могут содержать контент. -
svgElements: Это аналогичноhtmlElements, но для SVG-элементов. Этот список учитывается только в том случае, если SVG включен для$sanitize.
Этот метод должен вызываться на стадии конфигурации. После создания экземпляра службы$sanitize, этот метод не оказывает никакого влияния.Имейте в виду, что расширение встроенных списков элементов может подвергнуть ваше приложение уязвимости XSS или другим уязвимостям. Тщательно выбирайте добавляемые элементы.Параметры
Параметр Тип Описание elements Array.<String>ObjectСписок допустимых HTML-элементов или объект с одним или несколькими из следующих свойств:
-
htmlElements -
{Array<String>}- Список элементов для расширения текущего списка HTML-элементов. -
htmlVoidElements -
{Array<String>}- Список элементов для расширения текущего списка пустых HTML-элементов; т. е. элементов, у которых нет закрывающего тега. -
svgElements -
{Array<String>}- Список элементов для расширения текущего списка SVG-элементов. Список SVG-элементов учитывается только в том случае, если SVG включен для$sanitize.
Передача массива (
[...]) эквивалентна передаче{htmlElements: [...]}.Возвращаемое значение
$sanitizeProviderВозвращает self для цепочки.
-
-
addValidAttrs(attrs);
Расширяет встроенный список допустимых атрибутов, то есть атрибутов, которые считаются безопасными и не удаляются при очистке.
Примечание: новые атрибуты не будут обрабатываться как атрибуты URI, что означает, что их значения не будут очищаться как URI с использованием
$compileProvideraHrefSanitizationWhitelist и imgSrcSanitizationWhitelist.Этот метод должен вызываться на стадии конфигурации. После создания экземпляра службы$sanitize, этот метод не оказывает никакого влияния.Имейте в виду, что расширение встроенного списка атрибутов может подвергнуть ваше приложение уязвимости XSS или другим уязвимостям. Тщательно выбирайте добавляемые атрибуты.Параметры
Параметр Тип Описание attrs Array<String>Список допустимых атрибутов.
Возвращаемое значение
$sanitizeProviderВозвращает self для цепочки.
© 2010–2018 Google, Inc.
Licensed under the Creative Commons Attribution License 4.0.
https://code.angularjs.org/1.7.8/docs/api/ngSanitize/provider/$sanitizeProvider