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

Содержание:

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

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


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


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


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


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

 

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

        

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

 

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

 

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

 

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

 

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

 

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

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

 

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

 

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

 

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

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

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

 

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

 

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

 

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

 

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

 

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

 

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

 

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

 

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


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


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

 

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


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

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

 

Наши проекты

Автоматизация производственного планирования нефтесервисной компании на базе 1С:ЕРП 2.0
ЗАО «Инвестгеосервис»

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

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

- Блок планирования проектов (процессы объемно-календарного планирования пр...

1с-РАРУС МСК
1с-РАРУС МСК

Отрасль:
Разработка компьютерного программного обеспечения

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

- Финансово-бухгалтерский блок
- Казначейство ...

ПЭК
ПЭК

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

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

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

ООО «Мир Аксиомы»
ООО «Мир Аксиомы»

Отрасль:
Аудиторские и консалтинговые услуги

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

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

ООО «Лаборатория успеха»
ООО «Лаборатория успеха»

Отрасль:
Общественное и плановое питание, гостиничный бизнес, туризм

Внедренное типовое решение:
1С:Зарплата и управление персоналом 8. КОРП

Кадровый учет;
Расчет зарплаты;...

Компания IBS
Компания IBS

Отрасль:
Системный интегратор

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

- Интеграция систем – АСУП и «1С:Управление производственным предприятием»...

ООО "АСК ИНЖИНИРИНГ"
ООО "АСК ИНЖИНИРИНГ"

Отрасль:
Машиностроение, приборостроение

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

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

ООО “РТИТС”
ООО “РТИТС”

Отрасль:
Транспортные системы

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

Блок регламентированного кадрового учета и расчета заработной платы в 1С:ERP;...

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

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

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

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

ООО «Солви Пак»
ООО «Солви Пак»

Отрасль:
Торговля. Производство печати на рулонных материалах

Внедренное типовое решение:
1С:CRM+1С:Комплексная автоматизация

Управление отношениями с клиентами (CRM) ...

Автоматизация документооборота в компании ООО "Ликард"
ООО «Ликард» (ОАО ЛУКОЙЛ)

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

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

- Отказ от бумажного документооборота, от громоздких систем на базе офисного...

Автоматизация торговых операций на базе "1С:Управление торговлей" в ОАО "Авиазапчасть"
ОАО «Авиазапчасть»

Отрасль:
Авиационно-космическая промышленность

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

- Оптовая торговля;
- Оформление заказов покупателей;
- Планирование прод...

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

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

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

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