html_sanitize_attribute
指令 `html_sanitize_attribute` 指定在清理 HTML 内容时允许的 HTML 属性。
NGINX module to sanitize HTML 5 with whitelisted elements, attributes and CSS
·
location
语法html_sanitize_attribute attribute_name | attribute_name attribute_name ...;
默认值none
上下文location
参数1+
说明
指令 html_sanitize_attribute 是 NGINX 模块的一部分,旨在对 HTML5 内容进行清理。它允许用户定义一个允许的 HTML 属性白名单,用于处理 HTML 元素。通过使用此指令,管理员可以保护其应用程序免受潜在有害属性的影响,这些属性可能导致诸如 XSS(跨站脚本)之类的安全漏洞。该指令接受一个或多个参数值,每个参数代表应在清理后的输出中保留的属性名。
在处理请求时,清理器会将 HTML 元素的属性与 html_sanitize_attribute 提供的列表进行比较。如果某个属性不在白名单中,它将从输出的 HTML 中移除。此功能与其他指定允许的 HTML 元素和 CSS 属性的指令协同工作。它通过确保仅包含安全属性来帮助强化安全策略,从而保持对呈现 HTML 的控制并降低由任意内容输入引起的风险。
配置示例
location /sanitize {
html_sanitize_attribute src href;
html_sanitize_attribute class id;
}⚠
确保将所有必要的属性列入白名单;否则,由于属性缺失,功能可能会中断。
⚠
对类似 'style' 的属性要谨慎;如果配置错误,可能会引入安全风险。