09. Роли
Сравнение ролей доступа
Источник: https://helpf.pro/faq8/view/1111.html
Порядок простых действий для казалось бы сложной операции по сравнению ролей в 1С 8.
1) Открываете Роль1 в её панели выбираете подменю Действия - Вывести список- сохраняете в Новый1.mxl
2) Открываете Роль2 в её панели выбираете подменю Действия - Вывести список- сохраняете в Новый2.mxl
3) В главном меню открываете подменю Файл-Сравнить файлы - выбираете файл Новый1.mxl и Новый2.mxl. Нажимаете сравнить.
4) Получив окно сравнения передвигаетесь по нему по стрелкам изменений в верхнем правом углу.
5) Всё.
Как узнать, доступна ли определенная роль текущему пользователю?
Если Не РольДоступна("Менеджер") Тогда Сообщить("Просмотр заявок от покупателей не разрешен!");КонецЕсли;
Как получить информацию о ролях конфигурации?
Функция СписокВозможныхРолейКонфигурации() СписокРолей = новый СписокЗначений; РолиКонфигурации = Метаданные.Роли; Для каждого Роль из РолиКонфигурации Цикл СписокРолей.Добавить(Роль.Имя); КонецЦикла; Возврат СписокРолей;КонецФункции
Как выполнить код без проверки прав?
Использовать привилегированный модуль
Размещение программного кода, который должен выполняться БЕЗ КОНТРОЛЯ ОГРАНИЧЕНИЙ, в общий модуль с установкой у модуля флага ПРИВИЛЕГИРОВАННЫЙ.
Использовать привилегированный режим исполнения программного кода
Аналогичный режиму работы кода привилегированных модулей. Режим можно включить/выключить средствами встроенного языка:
УстановитьПривилегированныйРежим(<Включить>)
Параметр <Включить> (обязательный)
Тип: Булево. Определяет, будет ли включен привилегированный режим:
Истина - включить режим;
Ложь - выключить режим.
функция
ПривилегированныйРежим()
позволяет определить, включен привилегированный режим, или нет.
Использование привилегированного режима позволяет, во-первых, ускорить работу, так как не будут накладываться ограничения на доступ к данным, а во-вторых, позволяет выполнять операции с данными от лица пользователей, которым эти данные недоступны.
Привилегированный режим рекомендуется использовать тогда, когда с логической точки зрения нужно отключить проверку прав, или когда можно отключить проверку прав, чтобы ускорить работу. Допустимо использовать привилегированный режим тогда, когда работа с данными от лица некоторого пользователя не нарушает установленные для этого пользователя права доступа.