Почему после перехода на 1С:Комплексная автоматизация 2.4 перестало работать ограничение прав на уровне записей (RLS) и как это исправить?

Программист 1С v8.3 (Управляемые формы) 1С:Комплексная автоматизация IT и автоматизация бизнеса
← На главную

При переходе между мажорными релизами конфигураций (например, при обновлении с 1С:Комплексная автоматизация 2.2 на 2.4 или аналогичных редакций 1С:ERP и 1С:УТ 11) администраторы и разработчики нередко сталкиваются со сбоем механизма ограничения прав на уровне записей (RLS). Типичный симптом: после переноса или повторной настройки групп доступа и профилей (по складам, организациям, партнерам) пользователи с ограниченными правами полностью теряют видимость объектов — списки элементов и документов оказываются пустыми.

Разберем причины такого поведения платформы и подсистемы БСП, а также пошагово рассмотрим способы устранения проблемы.

Причины сбоя работы RLS при переходе на редакцию 2.4

В ветке конфигураций 2.4 была значительно переработана архитектура подсистемы «Управление доступом» из состава Библиотеки стандартных подсистем (БСП). В новой редакции используется производительный режим RLS, который полагается на предварительно рассчитанные вспомогательные данные в специальных служебных регистрах:

  1. РегистрСведений.НаборыЗначенийДоступа
  2. РегистрСведений.ТаблицыГруппДоступа
  3. РегистрСведений.КлючиДоступаКРегистрам, РегистрСведений.КлючиДоступаКОбъектам и сопутствующие таблицы.

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

Также важно учитывать специфику справочника Справочник.Партнеры: если используется ограничение доступа по группам партнеров со стратегией «Запрещены все, кроме указанных», в карточках партнеров обязательно должен быть заполнен реквизит Группа доступа. Для элементов с пустой группой доступа система блокирует видимость.

Способ 1. Принудительный запуск процедур обновления информационной базы

Самый быстрый и действенный способ устранить проблему — принудительно запустить полный цикл процедур обновления через командную строку. Это инициирует выполнение всех отложенных и пропущенных обработчиков БСП.

Выполним следующие действия:

  1. Завершим все активные пользовательские сеансы в информационной базе.
  2. Запустим сеанс «1С:Предприятие» в режиме тонкого или толстого клиента с параметром командной строки /c ЗапуститьОбновлениеИнформационнойБазы.

Пример строки запуска для пакетного файла или ярлыка:


"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /IBConnectionString "Srvr=server1c;Ref=ka_db;" /N "Администратор" /P "Пароль" /c ЗапуститьОбновлениеИнформационнойБазы

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

Способ 2. Интерактивный запуск и контроль регламентных заданий обновления доступа

Проанализируем состояние подсистемы прав через пользовательский интерфейс, если прямой запуск с ключом не решил проблему со списками всех справочников:

  1. Перейдем в раздел НСИ и администрирование → Настройки пользователей и прав → Ограничение доступа на уровне записей.
  2. Проверим статус заполнения данных доступа. Если отображается информация о том, что данные обновляются, дождемся окончания процесса. При необходимости нажмем кнопку запуска обновления прав вручную.
  3. Перейдем в раздел НСИ и администрирование → Обслуживание → Регламентные операции → Регламентные и фоновые задания.
  4. Найдем регламентное задание Заполнение данных для ограничения доступа (а также Обновление предопределенных данных) и выполним его принудительно по правой кнопке мыши.

Способ 3. Очистка параметров ограничений и пересчет ключей доступа

В ситуациях, когда фоновые задания зависают или считают, что обновление уже завершено, но права по-прежнему работают некорректно, выполним сброс служебных параметров RLS:

  1. Откроем через меню «Функции для технического специалиста» (или «Все функции») регистр сведений РегистрСведений.ПараметрыОграниченийДоступа.
  2. Очистим записи в данном регистре.
  3. Перезапустим сеанс администратора и в разделе управления доступом заново инициируем полное обновление прав.
  4. После выполнения пересчета обязательно перезапустим клиентские сеансы пользователей, чтобы очистить локальный кэш прав доступа.

Проверка корректности настройки групп доступа и партнеров

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

  1. Откроем справочник Справочник.ГруппыДоступаПартнеров и проверим, привязаны ли партнеры к соответствующим группам.
  2. В карточке пользователя или профиля убедимся, что включены корректные виды доступа (например, «Группы партнеров», «Склады») и заданы разрешающие исключения.
  3. Если в конфигурацию добавлялись собственные нетиповые роли, проверим в конфигураторе шаблоны ограничений RLS на предмет их соответствия стандартам БСП редакции 2.4.
← На главную