Давно присматриваюсь к каркасу как средству создания промышленных ЧМИ. Могу представить как решить почти все необходимые задачи.
Однако есть и такая задача которую не могу понять как решить - разграничение прав пользователей.
Есть список пользователей, на каждого налагаются некоторое множество ограничений
(которые, в целом, можно свести к списку переменных модулей которе можно изменять и списку процедур которые можно вызывать).

Да, можно ввести модуль управления пользователями реализующий охраников для элементов интерфейса.
В то же время в почти любой системе ЧМИ можно задавать свободно программируемые действия (скрипты) как реакцию на события.
В "скриптах" пользовтаель может задавать значения переменных, и вот здесь точно нужно реализовать ограниченный доступ -
какие-то пользователи могут писать в переменные (глобалы в модулях), а какие-то не должны.

Самое дубовое решение - реализовать специальные объекты-обертки, и менять значение через обращение к методу.
А если я захочу также ограничить доступ к некоторым процедурам? Снова объекты-обертки? Но ведь жирно...

Не понятно как средствами каркаса\языка ограничить доступ к глобальным переменным и процедурам
в зависимости от заданных прав пользователя. И возможно ли?

@Илья Ермаков: я знаю Вы реализовали несколько АСУ с ЧМИ на базе каркаса. Как решали такую задачу, если не секрет?