Тема: Права доступа в коде команды не имеют силы

Есть объект, команда (VBScript), пользователь и права доступа (роль).
В команде выполняется установка значений некоторых атрибутов объекта (ThisObject), флаг "Запускать без проверки прав" снят.
В коде команды SysAdminModeOn не применяется.
По роли пользователю разрешены только "Просмотр объекта" и "(Ограниченный)Просмотр файлов", запретов нет (хотя пробовал и с запретами на всё остальное).
Редактировать объект на форме пользователь не может (не доступно). Т.е. всё правильно.
Но, команда выполняется без проблем, атрибуты задаются и всё такое.
Почему, ведь не должно быть так?

Re: Права доступа в коде команды не имеют силы

A77x7 пишет:

Есть объект, команда (VBScript), пользователь и права доступа (роль).
В команде выполняется установка значений некоторых атрибутов объекта (ThisObject), флаг "Запускать без проверки прав" снят.
В коде команды SysAdminModeOn не применяется.
По роли пользователю разрешены только "Просмотр объекта" и "(Ограниченный)Просмотр файлов", запретов нет (хотя пробовал и с запретами на всё остальное).
Редактировать объект на форме пользователь не может (не доступно). Т.е. всё правильно.
Но, команда выполняется без проблем, атрибуты задаются и всё такое.
Почему, ведь не должно быть так?

Использование ThisObject равносильно использованию объектной переменной с правами системного администратора

Re: Права доступа в коде команды не имеют силы

А т.е. тогда лучше в Command_BeforeExecute(), например(?)
Спасибо.

Re: Права доступа в коде команды не имеют силы

A77x7 пишет:

А т.е. тогда лучше в Command_BeforeExecute(), например(?)
Спасибо.

Как вам удобно. Если важно иметь нативные права пользователя (так бывает редко, так как обычно ограничивают права на запуск команды ролью), я бы, наверно, просто перезачитал объект в команде через его хэндл или гуид:

Set obj = ThisApplication.GetObjectByGUID (ThisObject.GUID))