Как настроить права доступа в 1С:Комплексная автоматизация 2.4 и избежать блокировки полей и ошибок запуска

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

Настройка прав доступа в современных конфигурациях на платформе 1С:Предприятие 8.3 (таких как 1С:Комплексная автоматизация 2.4 и 1С:ERP) — задача нетривиальная. Часто администраторы и разработчики сталкиваются с ситуациями, когда полные права на конкретный справочник выданы, но пользователь всё равно не может создать или отредактировать элемент, либо система выдает ошибку запуска клиента. В этой статье мы подробно разберем, почему возникают такие проблемы и как правильно настроить права доступа, используя типовые механизмы Библиотеки стандартных подсистем (БСП).

Проблема 1. Блокировка полей в форме банковского счета при наличии полных прав

Рассмотрим ситуацию: кадровику необходимо дать возможность заводить банковские счета сотрудников. Вы добавили роль в расширение, предоставили полные права на справочник БанковскиеСчетаКонтрагентов (или аналогичный подчиненный справочник), но при попытке создания нового элемента все поля на форме оказываются заблокированными (серыми), а редактирование недоступно.

Выясним причину такого поведения системы. В конфигурациях ERP-класса банковские счета не существуют сами по себе — они всегда привязаны к владельцу. Владельцем может выступать справочник ФизическиеЛица (для сотрудников) или Контрагенты (для партнеров). В программном коде формы (как правило, в процедуре ПриСозданииНаСервере) заложена проверка прав доступа на объект-владелец.

Если у текущего пользователя нет прав на изменение владельца (например, на редактирование данных физического лица), система автоматически выполняет следующую строку кода:

ТолькоПросмотр = Истина;

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

  1. Проанализируем журнал регистрации в режиме «1С:Предприятие». При отказе в доступе система фиксирует событие «Доступ.Отказ», в котором будет четко указан объект метаданных, к которому не хватило прав.
  2. Добавим пользователю роль на изменение владельца. Для кадровика это должна быть роль «Добавление и изменение физических лиц». Если банковские счета создаются для клиентов или поставщиков, потребуется роль «Добавление и изменение партнеров».
  3. Убедимся, что у пользователя есть доступ к смежным классификаторам. Для заполнения банковских реквизитов необходимы права на чтение справочника Банки и классификатора БИК.

Проблема 2. Ошибка «Нет прав на запуск требуемого вида клиента» и пустое окно системы

Другая распространенная проблема возникает при переносе пользователей из старых конфигураций (например, КА 1.1) или при ручном создании учетных записей в Конфигураторе. Администратор отмечает галочками базовые роли, запускает сеанс, но видит ошибку доступа либо полностью пустое серое окно без интерфейса.

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

Чтобы исправить эту ситуацию и не допускать её впредь, разберем правильный алгоритм администрирования пользователей:

  1. Никогда не создавайте пользователей в Конфигураторе. Всегда переходите в раздел НСИ и администрирование -> Настройки пользователей и прав -> Пользователи и создавайте новую карточку там. При записи пользователя в режиме «1С:Предприятие» платформа автоматически создаст учетную запись в Конфигураторе и пропишет ей все необходимые служебные параметры.
  2. Используйте группы и профили групп доступа. Вместо ручного назначения ролей в Конфигураторе, добавьте пользователя в соответствующую группу доступа в режиме «1С:Предприятие».
  3. При включении пользователя в группу БСП самостоятельно назначит ему в Конфигураторе все обязательные системные роли, такие как ЗапускТонкогоКлиента, ЗапускТолстогоКлиента, БазовыеПрава и права на работу с файловым хранилищем.

Как правильно настраивать нетиповые права (вместо расширений)

Добавление новых ролей через расширения конфигурации часто усложняет последующее обновление базы данных и может приводить к конфликтам. В 1С:Комплексная автоматизация 2.4 заложен мощный конструктор прав, позволяющий обойтись без конфигурирования.

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

  1. Перейдем в раздел НСИ и администрирование -> Настройки пользователей и прав -> Профили групп доступа.
  2. Найдем предопределенный профиль «Кадровик». Редактировать его напрямую нельзя, так как он обновляется вместе с конфигурацией.
  3. Нажмем кнопку «Скопировать» (создать новый элемент копированием). Назовем новый профиль, например, «Кадровик (с доступом к банковским счетам)».
  4. В открывшейся форме нового профиля на вкладке «Разрешенные действия (роли)» найдем поиском и отметим флагами необходимые роли:
    • Добавление и изменение банковских счетов
    • Добавление и изменение физических лиц (если ранее у кадровика было только чтение)
    • Чтение банков
  5. Сохраним созданный профиль.
  6. Перейдем в справочник Группы доступа, создадим новую группу, выберем наш новый профиль и добавим в список участников нужного сотрудника.

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

Инструменты для оперативной диагностики прав доступа

Если вы все же столкнулись со сложным случаем ограничения прав (например, когда задействован механизм RLS — разграничение доступа на уровне записей), воспользуйтесь встроенными инструментами диагностики:

Отчет по правам доступа. Откройте карточку пользователя в режиме «1С:Предприятие», перейдите по ссылке «Права доступа» и нажмите кнопку «Отчет по правам». Этот отчет формирует подробную таблицу по всем объектам метаданных с указанием разрешенных действий (Чтение, Изменение, Добавление) и выводит конкретную роль, которая это право предоставляет.

Анализ RLS. Если в отчете написано «Просмотр», но при попытке открыть элемент возникает ошибка, проверьте, не включено ли ограничение доступа по группам физлиц, организациям или подразделениям. Если RLS активен, пользователю необходимо предоставить доступ к конкретным группам объектов в его группе доступа (вкладка «Ограничения доступа»).

← На главную