Django: 允许安全的HTML标签
我在研究XSS(跨站脚本攻击)以及各种框架和内容管理系统(CMS)是否提供保护措施(不仅仅是通过编程手段来避免这种情况)。
我知道在Django的模板语言中,可以把一个变量标记为|safe
,我想允许一些真正安全的HTML标签,这样用户就可以格式化文本(比如简单的东西,比如<b>加粗</b>),但要去掉一些像onload属性这样的东西。
我想知道Django是否推荐一种方法来做到这一点,而不仅仅是使用Python。我希望这样说能让你明白。
杰森
1 个回答
1
Django的一个核心概念就是它是用Python写的,所以任何Python的库都可以和Django一起使用。他们不会重复造轮子,除非有很好的理由。我认为HTML的清理和消毒就是他们决定不重复造的东西之一。
如果你想进行清理或消毒,可以看看BeautifulSoup这个Python库。