Коллеги, добрый день!
Подскажите, пожалуйста, каким образом из SQL скрипта можно узнать имеются ли у пользователя права на конкретную запись?
Нравится
Вообще все права валяются в Sys[#название объекта#]Right. И выбор в server studio в принципе делается 1 селектом. Если доступа к бд нет, то поможет sqlExecuter.
Если вы про раздел "SQL сценарии" в конфигураторе, то оттуда возможны только update/delete/create скрипты.
Данила, селект в Sys[#название объекта#]Right даст результат только если в таблице есть ссылка на конкретную запись объекта администрирования, в данном случае пользователя. Но если пользователь находится в организационной роли и права на запись предоставлены этой роли, то обычный селект по идентификатору пользователя не поможет. Так же обстоят дела со всеми вариантами наследования - если в его орг. роли есть функциональная роль и права на запись предоставлены функциональной роли, роли руководителей, которые наследуют все права подчиненных ролей и т.д. Скорее всего должна быть какая-то функция, которая запускается, когда пользователь переходит в раздел и ему отображаются все доступные записи с учетом наследования прав или когда пользователь пытается сохранить запись.
Возможно кто-нибудь с этим сталкивался?
На всякий случай - это процедура "GetOwnUserRoles"