将php模板引擎暴露给用户?

时间:2011-08-09 21:42:26

标签: php security templates twig

我想将报表生成器构建到我的Web应用程序中。用户通过站点的其他部分收集数据,然后应该能够生成“报告”,其中他/她可以以文档样式的方式使用所述数据。我希望用户能够使用基本的数学功能,获取/设置自己的变量等。我想为什么要重新发明轮子?如果我允许用​​户使用Twig Template Engine之类的内容编写报告,并且仅启用某些扩展名供他们使用,这看起来是否相当安全? Twig模板已经删除了标记中的任何php,并且除了基本的字符串更改等之外,没有太多强大的功能可以使用。让我知道你的想法。

2 个答案:

答案 0 :(得分:3)

Twig有一个相当强大的sandbox extension,它完全符合您的描述。有了足够严格的安全政策,我在这里看不到任何问题。

答案 1 :(得分:1)

如果你需要枝条,为什么不呢?它做得很好,有沙盒模式,可以编译模板。相反,从PHP提供PHP很难划分,所以使用一些模板对我来说并不坏。