Каждый администратор или разработчик 1С рано или поздно сталкивается с досадной ситуацией: в Конфигураторе пользователю назначаются новые роли, всё прекрасно работает, но через несколько дней (или сразу после очередного обновления конфигурации) права «слетают». Настройки пользователя возвращаются к исходному состоянию, и операцию приходится повторять заново.
В этой статье мы подробно разберем, почему так происходит в современных конфигурациях (таких как 1С:ERP, Комплексная автоматизация, Управление торговлей, Бухгалтерия предприятия 3.0), и рассмотрим пошаговый алгоритм, который поможет решить эту проблему раз и навсегда.
В современных конфигурациях 1С, разработанных на базе БСП (Библиотеки стандартных подсистем), за назначение прав отвечает специализированная подсистема УправлениеДоступом. Механизм этой подсистемы работает по принципу жесткого контроля соответствия прав, назначенных в Конфигураторе, и настроек, заданных в режиме «1С:Предприятие».
Давайте проанализируем основные причины, из-за которых роли автоматически отключаются:
ПолныеПрава и АдминистраторСистемы. Система исходит из логики, что администратору по умолчанию доступно всё, и хранить избыточный список ролей в его карточке не имеет смысла.Таким образом, ручная установка галочек в Конфигураторе в современных базах 1С полностью бесполезна. Нам необходимо действовать строго через механизмы пользовательского режима «1С:Предприятие».
---
Для того чтобы новые права стабильно работали и не пропадали при обновлениях, нам необходимо полностью перенести процесс управления ролями в режим «1С:Предприятие». Давайте разберем этот процесс по шагам.
Первым делом мы создаем саму роль в Конфигураторе, настраиваем необходимые права на объекты метаданных и сохраняем конфигурацию базы данных. Обратите внимание: в карточках пользователей в Конфигураторе назначать эту роль не нужно.
Чтобы система в режиме «1С:Предприятие» узнала о существовании новой роли, её необходимо зарегистрировать в справочнике ИдентификаторыОбъектовМетаданных. Рассмотрим подробнее, как это можно сделать:
Справочники.ИдентификаторыОбъектовМетаданных.ВыполнитьОбновлениеДанных(Истина, Ложь, Ложь);
/С ЗапуститьОбновлениеИнформационнойБазы
Теперь переходим непосредственно к настройке прав в режиме «1С:Предприятие»:
Профиль — это лишь шаблон прав. Чтобы эти права применились к конкретным людям, выполним финальный шаг:
После записи группы доступа система автоматически запустит фоновое задание, которое программно установит нужные галочки в Конфигураторе для выбранных пользователей. Теперь эти роли закреплены за ними надежно и не исчезнут ни при каких обновлениях конфигурации.