При переходе на редакции «1С:Зарплата и Управление Персоналом 3» с предыдущих версий (например, ЗУП 2.5) специалисты часто сталкиваются с неожиданным поведением системы: после включения механизма ограничения прав на уровне записей (RLS) и детальной настройки групп доступа пользователи перестают видеть сотрудников и документы. При этом физические лица в справочнике остаются доступными, а у роли пользователя есть все базовые права. Разберем по шагам, почему возникает эта ситуация, как устроен механизм RLS в современных конфигурациях и как восстановить корректное отображение данных.
Проанализируем ключевое отличие механизма разграничения прав. В ЗУП редакции 2.5 условия ограничений рассчитывались динамически непосредственно во время выполнения запросов СУБД. В ЗУП 3 подсистема управления доступом построена на базе «Библиотеки стандартных подсистем» (БСП) в производительном режиме.
В этом режиме права доступа не вычисляются «на лету» сложными соединениями. Вместо этого программа использует специальные вспомогательные таблицы — регистры ключей доступа. Для каждого объекта информационной базы формируется и записывается уникальный ключ, соответствующий текущим правам пользователя или группы пользователей. Вся эта работа вынесена в фоновый режим и возложена на специальное регламентное задание: Заполнение данных для ограничения доступа (в ряде версий — Обновление ключей доступа).
Если настройка RLS проводится на тестовой базе или копии, где регламентные задания сервера 1С заблокированы администратором, расчет ключей доступа попросту не запускается. В результате таблицы ключей остаются незаполненными, шаблоны RLS блокируют чтение данных, и динамические списки сотрудников и кадровых документов становятся абсолютно пустыми.
Выясним, как запустить расчет ключей доступа вручную, если регламентные задания отключены глобально на уровне кластера серверов 1С или свойств базы:
Заполнение данных для ограничения доступа (или Обновление ключей доступа).Если регламентное задание успешно отработало, но сотрудники по-прежнему не появились в списке, проанализируем дополнительные условия, накладываемые алгоритмами конфигурации:
Сотрудники анализируют организацию не только по реквизиту самого элемента, но и через кадровые срезы регистра сведений Организации, в которых работали сотрудники. Если сотрудники были перенесены или созданы обработкой без проведения кадровых документов (например, Прием на работу), данный регистр пуст. В таком случае RLS считает, что у сотрудника нет разрешенной организации, и скрывает его. Решением является перепроведение первичных кадровых приказов или программная перезапись элементов справочника.Группа доступа не заполнен, система автоматически расценивает доступ к нему как запрещенный. Соответственно, скрываются и все привязанные к этому физлицу сотрудники. Убедимся, что у каждого физического лица назначена соответствующая группа доступа.Обратим внимание на важную деталь работы платформы: даже после полного завершения регламентного задания параметры сеанса и кэш прав доступа в уже открытом сеансе пользователя не обновляются мгновенно. Чтобы изменения вступили в силу, пользователь обязательно должен перезапустить клиентское приложение «1С:Предприятие».