python是否有一个安全的,用户可编辑的脚本标记,用于像RoR的液体模板?

时间:2010-09-04 12:09:58

标签: python security templates themes liquid

我正在寻找一种模板语言,最终用户可以安全地编辑以自定义他们的Web应用程序的html /主题。

https://github.com/Shopify/liquid的工作方式。

4 个答案:

答案 0 :(得分:2)

Jinja2沙盒模式http://jinja.pocoo.org/docs/sandbox/声称允许安全执行不受信任的模板。我没有审查过代码,但在某种程度上,安全性取决于编码的防御性。沙盒的默认配置允许一些可能令人惊讶的事情,比如修改可变对象,所以你仍然需要小心。

答案 1 :(得分:1)

答案 2 :(得分:0)

Django套件(以及许多其他套件)有一个templating language

答案 3 :(得分:0)

Django模板语言(DTL)不提供沙盒,因此不应将其用于用户提供的模板。

Django 1.11 Documentation州:

  

模板系统对不受信任的模板作者不安全。例如,网站不应允许其用户提供自己的模板,因为模板作者可以执行诸如执行XSS攻击和访问可能包含敏感信息的模板变量的属性。