Имеет ли python безопасную, редактируемую пользователем разметку скриптов для шаблонов, подобных жидкости RoR? - PullRequest
7 голосов
/ 04 сентября 2010

Я ищу язык шаблонов, который конечные пользователи могут безопасно редактировать, чтобы настроить свои html / тему веб-приложения.

Что-то, как работает https://github.com/Shopify/liquid.

Ответы [ 4 ]

2 голосов
/ 26 апреля 2013

Режим песочницы Jinja2, http://jinja.pocoo.org/docs/sandbox/, утверждает, что позволяет безопасно выполнять ненадежные шаблоны.Я не проверял код, но в определенной степени безопасность зависит от защиты кода.Конфигурация песочницы по умолчанию допускает некоторые вещи, которые могут вызывать удивление, такие как изменение изменяемых объектов, поэтому вам все же нужно быть осторожным.

0 голосов
/ 10 августа 2017

Язык шаблонов Django (DTL) не предоставляет изолированную программную среду, поэтому его не следует использовать для пользовательских шаблонов.

Документация Django 1.11 состояния:

Система шаблонов не защищена от ненадежных авторов шаблонов. Например, сайт не должен позволять своим пользователям предоставлять свои собственные шаблоны, поскольку авторы шаблонов могут выполнять такие действия, как выполнение XSS-атак и доступ свойства переменных шаблона, которые могут содержать конфиденциальную информацию.

0 голосов
/ 04 сентября 2010

Несколько ссылок на некоторые движки шаблонов в Python.Я надеюсь, что это то, что вы имели в виду с вашим вопросом.

http://jinja.pocoo.org/2/
http://docs.djangoproject.com/en/dev/topics/templates/
http://genshi.edgewall.org/
http://www.makotemplates.org/
http://www.cheetahtemplate.org/

0 голосов
/ 04 сентября 2010

В наборе Django (среди многих других) есть язык шаблонов .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...