05.11.2020 Решетников Дмитрий 43905
Привилегированный режим в 1С

Содержание:

1.      Что такое Привилегированный режим в 1С?

2.      Работа в привилегированном режиме   


1.    Что такое Привилегированный режим в 1С?


В системе 1С Предприятие 8.3 можно задавать выполнение кода в привилегированном режиме. Привилегированный режим 1С – это режим, при котором отключается проверка прав на уровне записей (RLS), не производится контроль прав пользователя 1С (роли пользователя), что позволяет ускорить выполнение кода и позволяет прочесть или записать нужные данные.  


2.    Работа в привилегированном режиме


Имеется несколько возможностей работы в привилегированном режиме.

 

· Вызов процедуры или функции из общего модуля с включенным флагом «Привилегированный».

        

Работа в привилегированном режиме

 

Здесь можно располагать процедуры чтения и изменения данных, которые нужно выполнить, несмотря на доступные пользователю права доступа к объектам конфигурации.

 

Например, есть пользователь с ролью «Кассир». Обычно эта роль с сильно ограниченным набором прав и ему доступен только документ регистрации продаж. Перед записью документа необходимо проверить взаиморасчеты с клиентом. В этом случае вызывается процедура из общего модуля с флагом «Привилегированный», а обратно возвращается результат проверки. При этом пользователю не доступны сами данные о взаиморасчетах.

 

Другой пример – документ продажи оформляет кладовщик, у которого нет прав на регистр накопления «Продажи». В привилегированном режиме он сможет провести документ и записать данные в регистр продаж, при этом доступа к данным регистра он не получит.

 

· Использование процедуры глобального контекста УстановитьПривилегированныйРежим (<Включить>), где «Включить» – обязательный параметр типа Булево. В этом случае:

 

Истина – включает привилегированный режим;

Ложь – отключает привилегированный режим в 1С.

 

В клиент-серверном варианте работы информационной базы при вызове этого метода на клиенте привилегированный режим не включается.

 

Такой подход может использоваться при формировании отчета в 1С, где возможна ситуация, что отчет будет получать данные из регистров, которые недоступны пользователю. В этом случае процедуру получения данных нужно запустить в привилегированном режиме 1С:

 

УстановитьПривилегированныйРежим(Истина);

МассивРезультатов = Запрос.ВыполнитьПакетСПромежуточнымиДанными();

УстановитьПривилегированныйРежим(Ложь).

 

В основном количество вызовов включения привилегированного режима должно быть равным количеству вызовов выключения режима, однако, они могут различаться. Привилегированный режим автоматически выключится при возврате из функции/процедуры, в который он был включен. Если количество вызовов выключения привилегированного режима будет больше чем количество вызовов включения, то будет вызвано исключение.

 

Добавим, что привилегированный режим следует включать только для тех участков кода, где это действительно необходимо и отключать сразу же после выполнения этого фрагмента, чтобы в дальнейшем не терялась проверка прав пользователя.

 

Существует метод проверки активности привилегированного режима:

 

ПривилегированныйРежим(), который возвращает Истина или Ложь.

 

Также, начиная с версии 8.2, в платформе для документов в свойствах объекта конфигурации добавлены свойства «Привилегированный режим при проведении» и «Привилегированный режим при отмене проведения». Эти свойства автоматически устанавливаются в значение Истина при создании документа. В результате проведение и отмена проведения документа будет выполнено в привилегированном режиме.

 

Для объекта конфигурации «Бизнес-процесс» добавлено свойство «Привилегированный режим при создании задач». Оно также автоматически устанавливается в значение Истина при создании нового бизнес-процесса.

 

Есть несколько исключений, при которых не будет установлен привилегированный режим:

 

· Если установку привилегированного режима пытаться вызвать из внешней обработки с включенной защитой от опасных действий у пользователя (ЗащитаОтОпасныхДействий);


· Если информационная база работает в клиент-серверном режиме, а в консоли кластера серверов в свойствах информационной базы выбран профиль безопасности без флага «к привилегированному режиму»:


база в клиент-серверном режиме

 

Подводя итог, следует сканцентрировать внимание на том, что привилегированный режим в 1С нужно использовать тогда, когда это увеличит скорость работы системы за счет отключения проверки прав, но не будет противоречить логике программы. Данный режим уместен тогда, когда его использование точно не приведет к нежелательным проводкам или утечке данных.


Специалист компании ООО «Кодерлайн»

Решетников Дмитрий Сергеевич

 

Наши проекты

ООО «Еврорадиаторы»
ООО «Еврорадиаторы»

Отрасль:
1С:ERP 2.4

Внедренное типовое решение:

Специалисты «Кодерлайн» помогли перенести базу из текущей системы «1С:ERP 2.2» ...

ЗАО «Ламбумиз»
ЗАО «Ламбумиз»

Отрасль:
Производство картонной упаковки

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

- Маркетинг;
- Продажи;
- Планирование закупок;
- Закупки;
- Регламенти...

Внедрение 1С:Управление торговлей в оптово-розничной компании «Много Плитки»
ООО «Много Плитки»

Отрасль:
Торговля

Внедренное типовое решение:
1С:Управление торговлей

Закупки (снабжение) и управление отношениями с поставщиками:
- Оформление ...

Московский филиал ООО «Авиакомпания «Икар»
Московский филиал ООО «Авиакомпания «Икар»

Отрасль:
Авиаперевозки

Внедренное типовое решение:
1С:Бухгалтерия КОРП

Бухгалтерский учет Производственные операции Регламентированная отчетнос...

ПЭК
ПЭК

Отрасль:
Грузоперевозки

Внедренное типовое решение:
1С:Управление производственным предприятием

- Внедрение функционала управления НСИ;
- Рефакторинг;
- Оптимизация общег...

ЗАО «Многопрофильная формирующая авиагруппа» (ЗАО МФГ)
ЗАО «Многопрофильная формирующая авиагруппа» (ЗАО МФГ)

Отрасль:
Оптовая торговля транспортными средствами и оборудованием

Внедренное типовое решение:
1С:Бухгалтерия ПРОФ

- Финансы, управленческий учет, мониторинг показателей
- Бухгалтерский уче...

Внедрение блока бухгалтерского учета «1С:Управление производственным предприятием»
ОАО «Издательство «Просвещение»

Отрасль:
Производство

Внедренное типовое решение:
1С:Управление производственным предприятием

Бухгалтерский учет:
- Завершение периода;
- Регламентированная отчетнос...

Внедрение ПП "1С:Бухгалтерия 8 ПРОФ" в ООО «Союз Три» (Кондитерский дом Renardi)
ООО «Союз Три»

Отрасль:
Производство

Внедренное типовое решение:
1С:Бухгалтерия 8 ПРОФ

Бухгалтерский учет
- Банк и касса
- Расчеты с контрагентами
Налоговый ...

ООО «ПраксисКом»
ООО «ПраксисКом»

Отрасль:
Аутсорсинг бухгалтерских услуг

Внедренное типовое решение:
1С:Бухгалтерия ПРОФ

- Бухгалтерский учет:
Банк и касса
Завершение периода
Нематериальные ...

ЗАО «Инвестгеосервис»
ЗАО «Инвестгеосервис»

Отрасль:
Нефтесервис

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

Объемно-календарное планирование производства Автоматизация бизнес-проце...

Автоматизация контроля исполнительской дисциплины на базе ПП «1С:Документооборот 8 ПРОФ»
ООО «ФСК Лидер»

Отрасль:
Строительство и девелопмент

Внедренное типовое решение:
1С:Документооборот 8 ПРОФ

- Делопроизводство;
- Учет и хранение документов;
- Учет и контроль исполне...

Автоматизации бизнес-процессов учета и планирования на базе «1С:ERP Управление предприятием 2.0»
ООО «Буровая сервисная компания «ГРАНД»

Отрасль:
Нефтесервис

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

- Создание полноценной управленческой системы взамен существующих
- Внедр...

Наши соц. сети

Telegram-канал «Koderline 1С» Группа в Вконтакте «Кодерлайн КОРП» Rutube

Остались вопросы - обратитесь к нам!

Впишите свои Имя и Телефон, чтобы мы ответили на все интересующие Вас вопросы.
ФИО*
E-mail*
Телефон*
Сообщение