Можно ли ограничить доступные теги / функции в шаблонах Smarty? - PullRequest
1 голос
/ 30 марта 2010

У нас есть веб-приложение (можно сказать, что это CMS), где мы разрешаем пользователям редактировать свои собственные шаблоны

У нас есть, например ::1003 *

article.template
page.template

Теперь мы хотим ограничить то, что пользователи могут или не могут делать в своих шаблонах. Конечно, использование PHP будет запрещено (а Smarty позволяет нам запрещать PHP). Но можно ли определить, какие функции или циклы Smarty они могут или не могут использовать?

Я не могу найти это в документации Smarty. Нам нужна простая в использовании система шаблонов, которая может сделать это.

1 Ответ

0 голосов
/ 19 апреля 2012

Если вы используете Smarty версии 3: да, это возможно. Проверьте Smarty_Security класс.

Обратите внимание, что вам также необходимо ограничить HTML, который они могут создавать (если их HTML будет просматривать кто-либо еще). Я бы порекомендовал HTMLPurifier для этого.

...