安全呈现用户提供的django模板

安全呈现用户提供的django模板,django,django-templates,Django,Django Templates,因此,根据之前的一篇文章,我决定创建一个网站,允许django设计师上传模板和css文件。我将提供一组定义良好的上下文输入和对象,然后呈现用户提供的模板。这将有望为新手提供大量的例子,并为设计师提供一个很好的方法来展开他们的翅膀 我需要一种方法来确定模板渲染是否“安全”。希望确保没有恶意的javascript,疯狂的路径请求会破坏我的Web服务器,等等。现在我知道没有保证的方法来清理这些,但我希望有比“信任我的用户”更好的方法 欢迎您提供任何建议。我知道这并不是您所希望的,但最安全的选择是允许最

因此,根据之前的一篇文章,我决定创建一个网站,允许django设计师上传模板和css文件。我将提供一组定义良好的上下文输入和对象,然后呈现用户提供的模板。这将有望为新手提供大量的例子,并为设计师提供一个很好的方法来展开他们的翅膀

我需要一种方法来确定模板渲染是否“安全”。希望确保没有恶意的javascript,疯狂的路径请求会破坏我的Web服务器,等等。现在我知道没有保证的方法来清理这些,但我希望有比“信任我的用户”更好的方法


欢迎您提供任何建议。

我知道这并不是您所希望的,但最安全的选择是允许最终用户保存其模板的副本,呈现html和css并转义所有标记。您可以允许他们上传完成的主题的图片


你的第二个选择是允许他们上传任何内容,但在你审核他们提交的内容之前不在网站上显示。

谢谢你的想法,我认为这与DjangoSites.org的做法类似,但我希望能实现自动化。真的,你不能信任随机用户。任何可能导致未经检查获取。。。任何事情都可能导致糟糕的事情发生:href、src、iframe、javascript,甚至css文件中的url(),等等。我一直在搜索,我认为你是对的。我制作了一个表格,将文件(转义!!!)复制到电子邮件中。我只需要浏览一下“可疑”的东西,然后批准或不批准。我有足够的知识知道人们什么时候在做他们不应该做的事情。