Как настроить видимость и доступ к внешнему отчету в 1С на управляемых формах?

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

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

Рассмотрим по шагам все доступные способы настройки видимости и ограничения прав на внешние отчеты с помощью Библиотеки Стандартных Подсистем (БСП) и встроенных средств платформы 1С.

Способ 1. Настройка видимости через механизм «Быстрый доступ»

Если требуется ограничить отображение команды вызова отчета в разделах программы для рядовых пользователей, проанализируем возможности подсистемы Дополнительные отчеты и обработки в режиме «1С:Предприятие»:

  1. Откроем справочник Дополнительные отчеты и обработки (обычно находится в разделе Администрирование — Печатные формы, отчеты и обработки).
  2. Откроем карточку нужного внешнего отчета.
  3. В табличной части команд обратим внимание на колонку Быстрый доступ.
  4. Нажмем на ссылку в этой колонке и укажем конкретный список пользователей или групп пользователей, которым должен быть доступен отчет.

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

Способ 2. Ограничение прав на уровне записей (RLS)

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

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

Благодаря этому механизму пользователи без соответствующих прав не только не увидят элемент в интерфейсе, но и не смогут получить к нему доступ на уровне запросов платформы.

Способ 3. Использование режимов публикации и привязки к разделам

Выясним, как ещё можно управлять доступностью внешнего отчета через реквизиты самой карточки отчета:

Способ 4. Программная проверка прав внутри самого отчета

Разберем ситуацию, когда необходимо дополнительно защитить отчет от несанкционированного запуска (например, если пользователь пытается открыть файл .erf напрямую через меню «Файл — Открыть»). Для этого добавим программную проверку доступности роли в модуль формы или модуль объекта отчета.

Рассмотрим пример кода при открытии формы отчета:


Процедура ПриОткрытии(Отказ)
    
    // Проверяем наличие специальной роли у текущего пользователя
    Если Не Пользователи.РольДоступна("ИмяРолиДоступаКОтчету") Тогда
        ВызватьИсключение "У вас недостаточно прав для запуска данного отчета.";
    КонецЕсли;

КонецПроцедуры

Также проверку можно выполнить в событии ПриКомпоновкеРезультата в модуле объекта отчета, чтобы предотвратить формирование отчета даже при вызове из внешних алгоритмов.

Особенности безопасности и платформенные ограничения

Проанализируем важные аспекты безопасности платформы 1С при работе с внешними отчетами:

  1. Право на интерактивное открытие: Все настройки БСП защищают видимость отчета внутри справочника дополнительных обработок. Однако если у пользователя в его роли установлено платформенное право Интерактивное открытие внешних отчетов и обработок, он сможет открыть файл отчета напрямую из файловой системы. Для обеспечения полной безопасности рекомендуется отключать это право у обычных пользователей.
  2. Безопасный режим: При регистрации отчета в БСП по умолчанию применяется безопасный режим (ПараметрыРегистрации.БезопасныйРежим = Истина). Это предотвращает выполнение небезопасного кода на сервере (доступ к файловой системе, выполнение внешних программ), повышая общий уровень защиты системы.
← На главную