tgalopin / html-sanitizer
1.5.0
2021-09-14 08:27 UTC
Requires
- php: >=7.1
- ext-dom: *
- league/uri-parser: ^1.4.1
- masterminds/html5: ^2.4
- psr/log: ^1.0|^2.0|^3.0
Requires (Dev)
- phpunit/phpunit: ^7.4
- symfony/var-dumper: ^4.1
README
此库已弃用,因为它已合并到Symfony 6.1中的HtmlSanitizer组件:[链接](https://symfony.ac.cn/doc/current/html_sanitizer.html)
html-sanitizer是一个库,旨在处理、清理和清理外部用户(您无法信任的用户)发送的HTML,让您可以安全地存储和显示它。它提供了合理的默认设置,同时仍然可以完全配置,为开发者提供良好的体验。
在内部,清理器对HTML有深刻的理解:它解析输入并创建一个DOMNode对象的树,从中仅保留内容中的安全元素。通过使用此技术,它安全(使用严格的白名单)、快速且易于扩展。
它还提供了有用的功能,例如将图片或iframe URL转换为HTTPS。
Symfony集成
此库也作为一个Symfony扩展包提供。
文档
安全问题
如果您在清理器中发现安全漏洞,请遵循我们的披露程序。
向后兼容性承诺
此库遵循与Symfony框架相同的向后兼容性承诺:[链接](https://symfony.ac.cn/doc/current/contributing/code/bc.html)
注意:此库中的许多类都标记为
@final
或@internal
。被标记为@internal
的类不包括在任何向后兼容性承诺中(您不应在您的代码中使用它们),而标记为@final
的类可以使用,但不应该被扩展(应使用组合)。
感谢
感谢
- Open Web Application Security Project,其中许多测试是从中提取的(特别是从OWASP/java-html-sanitizer中提取的);
- Masterminds/html5-php,这是一个出色的HTML5解析器,默认情况下在此库中使用;
- The PHP League URI parser,它允许此库安全地过滤主机。