Чтение и проверка прав и ролей пользователей в 1С 8.3



&НаСервере

Процедура ЧтениеИПроверкаПравИРолейПользователей() // Варианты прав: Чтение, Изменение, Добавление, Удаление, Проведение



// Чтение права к объекту метаданных у текущего пользователя

Если ПравоДоступа("Изменение", Метаданные.Справочники.Материалы) Тогда

Сообщить("Доступ к справочнику Материалы на изменение открыт!");

КонецЕсли;



// Чтение права к объекту метаданных у определенной роли

Если Не ПравоДоступа("Удаление", Метаданные.Справочники.Материалы, Метаданные.Роли.Менеджер) Тогда

Сообщить("У роли Менеджер нет прав на удаление в справочнике Материалы!");

КонецЕсли;



// Проверка права к объекту метаданных у других пользователей

ВсеПользователи = ПользователиИнформационнойБазы.ПолучитьПользователей();

Для Каждого Пользователь Из ВсеПользователи Цикл

Если ПравоДоступа("Изменение", Метаданные.Справочники.Материалы, Пользователь) Тогда

Сообщить("Доступ для " + Пользователь.Имя + " на изменение открыт!");

КонецЕсли;

КонецЦикла;



// Чтение роли у текущего пользователя

Если РольДоступна("Администратор") Тогда

Сообщить("У Вас права Администратора!");

КонецЕсли;



// Проверка права у пользователя и в случае его отсутствия - вызов исключения

ВыполнитьПроверкуПравДоступа("Изменение", Метаданные.Справочники.Материалы); // "Нарушение прав доступа!"



КонецПроцедуры




✍️ @odin1C_rus