Механизм ограничения прав доступа на уровне записей (RLS) в конфигурации 1С:Управление производственным предприятием 1.3 позволяет гибко разграничивать видимость данных (например, документов и справочников конкретных организаций) для различных пользователей. Однако при первичной настройке администраторы часто сталкиваются с ошибками: путают снятие базовых прав с наложением ограничений, забывают о логике объединения групп или сталкиваются с кэшированием данных форм. Разберем по шагам, как правильно активировать и настроить RLS по организациям, а также выясним причины распространенных ошибок.
Прежде чем настраивать ограничения для конкретных пользователей, необходимо включить механизм RLS на уровне всей информационной базы. Разберем, как это сделать:
Администрирование пользователей или Полный интерфейс.Сервис → Настройка учета → Параметры учета (либо через меню Доступ на уровне записей → Параметры доступа на уровне записей).Организации.В типовой конфигурации УПП 1.3 ограничение доступа по объектам назначается не напрямую конкретному пользователю, а через справочник Группы пользователей.
Проанализируем процесс назначения прав:
Группы пользователей и создадим новую группу (например, «Менеджеры Организации №1»).Настройка прав доступа (меню Доступ на уровне записей → Настройка доступа).Заполнить. Если только что созданная группа не отображается в списке, закроем форму и откроем ее заново: при открытии форма считывает актуальные объекты из базы данных, поэтому перезапуск окна обновит внутренний список.Организации и укажем список тех организаций, с которыми пользователям данной группы разрешено работать.При настройке нескольких групп пользователей и ролей крайне важно понимать, как платформа 1С объединяет права. В системе действует принцип логического сложения (ИЛИ):
Все пользователи ограничение по организациям отключено (или разрешены все организации), то ограничение не сработает ни для одного сотрудника. Ограничение по виду доступа должно быть включено и для группы Все пользователи, либо в ней должны быть установлены только общедоступные значения.Распространенная ошибка заключается в попытке снять галочку права Чтение у роли в конфигураторе. Разберем, к чему это приводит и как устроено ограничение доступа на уровне метаданных:
Чтение для справочника Организации или документов, платформа полностью запретит обращение к объекту. При попытке открыть любой связанный журнал или форму система выдаст критическую ошибку Нарушение прав доступа.Чтение у роли обязательно должен быть включен, а в нижней части окна настройки роли (в поле «Ограничение доступа к данным») должен быть прописан шаблон RLS (например, #ПоОрганизациям). В типовых ролях УПП 1.3 эти шаблоны уже встроены во все стандартные роли.Полные права или любая другая административная роль без ограничений RLS, платформа предоставит полный доступ ко всем данным независимо от настроек в режиме предприятия.Рассмотрим важные нюансы разработки и доработки конфигурации при активном RLS:
ВЫБРАТЬ РАЗРЕШЕННЫЕ. Если этого не сделать, запрос попытается прочитать запрещенные записи и завершится аварийно с ошибкой нарушения прав:
ВЫБРАТЬ РАЗРЕШЕННЫЕ
ЗаказПокупателя.Ссылка КАК Ссылка,
ЗаказПокупателя.Номер КАК Номер,
ЗаказПокупателя.Организация КАК Организация
ИЗ
Документ.ЗаказПокупателя КАК ЗаказПокупателя
УстановитьПривилегированныйРежим(Истина), игнорируют RLS и обращаются ко всей базе данных без ограничений.