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

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

При работе в типовых конфигурациях 1С (таких как 1С:Управление торговлей, 1С:ERP или 1С:Комплексная автоматизация) пользователи могут столкнуться с ситуацией, когда привычная команда меню Файл — Открыть для внешнего файла .epf или .erf внезапно завершается системным сообщением Нарушение прав доступа. Выясним причину такого поведения и подробно разберем все способы решения проблемы.

Проанализируем механизм возникновения блокировки. В конфигурациях, построенных на базе Библиотеки стандартных подсистем (БСП), периодически выводятся информационные оповещения центра безопасности фирмы 1С. Если один из пользователей с административными полномочиями нажимает в таком окне кнопку Заблокировать использование внешних обработок, подсистема безопасности БСП автоматически отзывает системную роль ИнтерактивноеОткрытиеВнешнихОтчетовИОбработок у всех пользователей информационной базы, включая администраторов. В типовом профиле администратора это право часто не закреплено жестко по соображениям информационной безопасности, из-за чего даже полные права перестают спасать от ошибки.

Способ 1. Восстановление роли через режим 1С:Предприятие

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

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

Способ 2. Включение роли через Конфигуратор

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

  1. Запустим информационную базу в режиме Конфигуратор под учетной записью администратора.
  2. Откроем меню Администрирование — Пользователи.
  3. Найдем в списке нужного пользователя и дважды кликнем по нему для открытия свойств.
  4. Перейдем на вкладку Прочие, найдем в перечне доступных ролей строку Интерактивное открытие внешних отчетов и обработок и установим соответствующий флаг.
  5. Нажмем ОК и перезапустим пользовательский сеанс в режиме предприятия.

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

Способ 3. Перенос обработок в справочник Дополнительные отчеты и обработки

Проанализируем наиболее безопасный с точки зрения архитектуры 1С вариант — отказ от небезопасного интерактивного открытия файлов через меню «Файл» в пользу штатного справочника ДополнительныеОтчетыИОбработки.

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

  1. Перейдем в раздел НСИ и администрирование — Печатные формы, отчеты и обработки.
  2. Убедимся, что включен флаг Дополнительные отчеты и обработки, и перейдем по одноименной ссылке.
  3. Нажмем кнопку Добавить из файла... и укажем путь к внешней обработке.
  4. Настроим расписание выполнения, состав команд и видимость для пользователей в интерфейсе.

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

Особенности платформы: безопасный режим и защита от опасных действий

Рассмотрим дополнительные ограничения платформы 1С:Предприятие 8.3, о которых важно помнить после разблокировки ролей:

  1. Защита от опасных действий: начиная с версии платформы 8.3.9 при каждом интерактивном запуске файла .epf или .erf система отображает предупреждение о потенциальной опасности открываемого кода. Если это предупреждение мешает регулярной работе, его можно отключить в карточке пользователя в Конфигураторе (свойство Защита от опасных действий) либо настроить доверенные пути в файле конфигурации conf.cfg.
  2. Безопасный режим: при интерактивном открытии платформой могут накладываться ограничения на выполнение привилегированных операций, обращение к внешним COM-объектам, файловой системе операционной системы или сторонним библиотекам. Для выполнения неограниченного кода внешняя обработка должна либо запускаться с явным отключением безопасного режима, либо регистрироваться в справочнике дополнительных обработок с соответствующими разрешениями.
← На главную