如何解决Java中的安全模板引擎是什么?
| 我正在寻找Java中的模板引擎,该模板引擎禁止仅在标签中执行代码。 在一个理想的世界中,我将搜索与Jinja2(或Django模板引擎)相当的产品。 基于Django,模板标签由我创建时将使用,但是用户无法创建模板标签(通过执行代码)。 我会在Play中实现它!框架。 谢谢你的帮助!解决方法
您正在寻找StringTemplate。
其区别特征是
严格执行模型视图
分离不同于其他引擎。
严格的分隔使网站和
代码生成器更加灵活和
可维护的它还提供了
对恶意软件的出色防御
模板作者
,根据您的需求,看起来您所需要的只是一个模板引擎,它不允许类似于JSP \的scriptlet(在<%和%>之间),并且仅基于标记和/或属性。
如果是这样,我想向您推荐Thymeleaf http://www.thymeleaf.org(此处与JSP进行比较),我是其中的作者。但是,如果我没记错的话,那么Velocity也可以满足这些要求http://velocity.apache.org,因此您可以自行选择!
,如果您想提供一种简单的方法来修改它们的模板,而无需太多了解数百个自定义标签并实现明确定义的可访问功能,同时又可以自由地呈现它们,则应考虑使用被动模板。这样可以确保不会添加任何恶意代码:) Snippetory是Java中具有被动模板的强大引擎。但是,如果要控制访问,访问控制也可能是一个好主意。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。