Как настроить права доступа только на чтение и просмотр всех объектов в 1С:ERP 2?

Системный администратор 1С v8.3 (Управляемые формы) 1С:ERP Управление предприятием Управленческий учет
← На главную

В процессе эксплуатации системы 1С:ERP Управление предприятием 2 часто возникает задача предоставить определенным категориям пользователей (например, аудиторам, руководителям или внешним консультантам) доступ ко всем данным системы. При этом критически важно исключить любую возможность случайного или намеренного изменения, удаления или создания новых документов и справочников. На первый взгляд кажется, что в такой мощной конфигурации должна быть типовая роль ТолькоПросмотр, но на практике администраторы сталкиваются с тем, что стандартного решения «одной кнопкой» не существует.

В данной статье мы подробно разберем, как правильно сконструировать профиль доступа «Только чтение», проанализируем причины, по которым объекты могут пропадать из интерфейса, и рассмотрим альтернативные методы ограничения прав. Для ускорения подбора прав пригодится обработка для поиска ролей и профилей доступа к объектам ERP.

Метод 1. Сборка профиля из типовых ролей на чтение

Проанализируем архитектуру прав в 1С:ERP. Разработчики системы заложили принцип разделения прав на «Чтение» и «Редактирование» практически для каждого метаобъекта. Чтобы создать корректный профиль, нам необходимо собрать воедино все роли, отвечающие за просмотр данных. Рассмотрим этот процесс по шагам:

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

Почему «пропадают» разделы и документы?

Разберем ситуацию, описанную многими администраторами: роли на чтение назначены, но разделы (подсистемы) «Склад», «Продажи» или «Закупки» не отображаются. Проблема заключается в отсутствии специальных интерфейсных ролей. В 1С:ERP за видимость каждой вкладки панели разделов отвечают отдельные роли, которые обычно называются Раздел [Название раздела] (например, РазделПродажи). Без их добавления в профиль интерфейс пользователя останется пустым, даже если у него есть права на все документы внутри этого раздела.

Проанализируем разницу между правами Чтение и Просмотр в платформе 1С:

При настройке профиля убедитесь, что выбранные роли включают именно интерактивный просмотр. Если вы создаете свою роль «с нуля» (через конфигуратор или расширение), всегда устанавливайте флаг Просмотр вместе с Чтением.

Влияние механизма RLS (Разграничение прав на уровне записей)

Если вы настроили профиль, добавили роли разделов, но списки документов все равно пусты — скорее всего, дело в механизме RLS. Рассмотрим, как это работает в ERP. Система проверяет не только право на объект в целом, но и доступ к конкретной записи (например, по Организации или Складу).

Для того чтобы пользователь с правами «Только чтение» видел все данные, необходимо:

  1. Либо в настройках Группы доступа (куда включен пользователь) на закладке «Ограничения доступа» установить значения «Все разрешены» для всех видов доступа (Организации, Подразделения, Склады и т.д.).
  2. Либо добавить техническую роль ПолныйДоступБезОграничений0 (используйте с осторожностью), которая отключает проверки RLS для данного пользователя.

Метод 2. Использование даты запрета редактирования

Существует «обходной» путь, который часто предлагают на форумах: дать пользователю Полные права, но установить дату запрета редактирования далеко в будущем (например, 31.12.2040). Давайте выясним, почему этот метод считается небезопасным и неполным:

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

Метод 3. Создание роли через расширение конфигурации

Наиболее современным и надежным способом является использование механизма расширений. Это позволяет не вносить изменения в основную конфигурацию и легко обновлять систему. Разберем алгоритм действий программиста:

  1. Создайте новое расширение.
  2. Добавьте в него новую роль (например, уд_ТолькоПросмотрВсего).
  3. В окне редактирования роли нажмите правой кнопкой мыши на корневой узел метаданных и выберите «Установить права».
  4. Установите флажки Чтение и Просмотр для всех объектов. При этом снимите флажки Добавление, Изменение и Удаление.
  5. Добавьте эту роль в профиль доступа в режиме «1С:Предприятие».

Этот способ гарантирует, что пользователь увидит абсолютно все объекты, включая те, для которых в типовой конфигурации могли забыть создать отдельную роль «на чтение».

Проблема «Рабочих мест»

Рассмотрим ситуацию с обработками и рабочими местами (например, «Доставка» или «Чеки ККМ»). В ERP многие интерфейсы построены на базе обработок. По логике системы, обработка предназначена для выполнения действий. Поэтому роли на «только чтение» для многих рабочих мест просто отсутствуют. Если аудитору нужно увидеть данные, которые отображаются в таком рабочем месте, ему придется открывать непосредственно списки документов через меню Функции для технического специалиста (если оно доступно) или через соответствующие отчеты.

Рекомендованный состав ролей для полноценного «Аудиторского» доступа:

  1. Все роли вида Чтение... (документов и справочников).
  2. Все роли вида Раздел... (для отображения вкладок интерфейса).
  3. Роль ВыводНаПечатьСохранениеФайлов — без нее пользователь не сможет выгрузить отчет в Excel или сохранить печатную форму.
  4. Роль ПросмотрЖурналаРегистрации — если аудитору требуется проверять, кто и когда менял данные.
  5. Роль ЧтениеДополнительныхСведений — для видимости доп. реквизитов, созданных пользователями.

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

← На главную