Есть ли у django редактируемый пользователем язык шаблонов, который безопасен, как у rails жидкость? - PullRequest
2 голосов
/ 10 февраля 2011

Есть ли у django редактируемый пользователем язык шаблонов, который безопасен, как у rails жидкость?

т.е. конечный пользователь не может взломать код шаблона для вывода опасных объектов и взлома веб-сайта.

Ответы [ 2 ]

2 голосов
/ 10 февраля 2011

Если вы используете правильный язык шаблона: да.

См. Теги и фильтры шаблона Django:

Пример:

{{ evil_userinput }}

Это распечатает вводимые пользователем данные напрямую.

{{ evil_userinput|escape }}

Это исключит все сущности HTML, поэтому невозможно включить опасный код в вашу страницу HTML.

1 голос
/ 10 февраля 2011

Жидкость произошла из языка шаблонов Django, поэтому ответ - да. Вы можете визуализировать предоставленные пользователем шаблоны и обрабатывать их так, как вы хотите. Безопасность, однако, это то, что разработчики должны беспокоиться. Инструменты шаблонов не защитят вас, если вы хотите, чтобы пользователи стреляли в вас, если вы не очистите и не подтвердите их ввод.

Вот несколько хороших прочтений:

http://www.djangobook.com/en/2.0/chapter04/

http://www.djangobook.com/en/2.0/chapter09/

http://loopj.com/2009/05/23/a-django-developers-views-on-rails/

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