При администрировании информационных баз 1С:Бухгалтерия предприятия 3.0 (включая версию КОРП) с большим штатом сотрудников (от нескольких десятков до сотен человек) администраторы часто сталкиваются с неочевидным поведением системы: привычный по другим конфигурациям справочник ГруппыДоступа отсутствует или скрыт в пользовательском интерфейсе, а привязать права сразу группе сотрудников не удается. Приходится открывать карточку каждого пользователя и вручную проставлять нужные флажки профилей.
Разберем детально, почему так устроена система прав в типовой бухгалтерии, как работают типовые механизмы и какими способами можно организовать быстрое и удобное управление правами большого количества пользователей.
В конфигурациях линейки «Бухгалтерия предприятия» подсистема «Управление доступом» библиотеки стандартных подсистем (БСП) по умолчанию работает в режиме упрощенного интерфейса управления правами доступа. Рассмотрим особенности этого режима:
ГруппыДоступа скрыт от пользователя, чтобы не перегружать интерфейс небольших организаций сложными многоуровневыми связями.ГруппыПользователей в данном режиме играет исключительно организационную роль и не передает права входящим в него сотрудникам.Если конфигурация остается на типовой поддержке без доработок, самым простым и безопасным подходом является централизованное изменение состава ролей внутри профилей доступа. Разберем по шагам, как это реализовать:
Если на предприятии требуется полноценная матрица прав с назначением доступа на элементы справочника ГруппыПользователей, упрощенный режим можно переключить в расширенный. Проанализируем два варианта переключения:
ГруппыДоступа, где участниками группы могут выступать не только отдельные пользователи, но и группы пользователей. Обратите внимание: включение RLS увеличивает нагрузку на СУБД, так как ко всем запросам платформы добавляются проверки ограничений.УправлениеДоступомПереопределяемый найдем процедуру ПриОпределенииНастроек и переопределим параметр:
Процедура ПриОпределенииНастроек(Настройки)
Настройки.УпрощенныйИнтерфейсУправленияПравамиДоступа = Ложь;
КонецПроцедуры
После отключения упрощенного интерфейса в меню появится полноценный список групп доступа. Теперь достаточно создать группу доступа, привязать к ней профиль и указать в качестве участников группу пользователей (например, «Отдел снабжения»). При добавлении нового сотрудника в группу пользователей все права назнаblockятся ему автоматически.
Если требуется разово или периодически обновлять права у сотен пользователей без изменения типового режима интерфейса, воспользуемся штатным программным API подсистемы управления доступом. Напишем простую внешнюю обработку со следующим кодом:
// Пример массового включения профиля списку пользователей
Для Каждого ПользовательСсылка Из МассивВыбранныхПользователей Цикл
УправлениеДоступом.ВключитьПрофильПользователю(ПользовательСсылка, ПрофильГруппДоступаСсылка);
КонецЦикла;
// Пример массового отключения профиля
Для Каждого ПользовательСсылка Из МассивВыбранныхПользователей Цикл
УправлениеДоступом.ВыключитьПрофильПользователю(ПользовательСсылка, ПрофильГруппДоступаСсылка);
КонецЦикла;
Вызов процедур УправлениеДоступом.ВключитьПрофильПользователю и УправлениеДоступом.ВыключитьПрофильПользователю корректно обновляет системные регистры прав доступа БСП, не нарушая целостность информационной базы и экономя рабочее время администратора.
/C ЗапуститьОбновлениеИнформационнойБазы или вызвав регламентные процедуры обновления параметров работы программы.