Использование собственных ролей в расширениях 1С:Фреш и альтернативы выгрузке баз

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

Работа в облачном сервисе 1С:Предприятие 8 через интернет (1С:Фреш) предоставляет множество преимуществ: от автоматических обновлений до отсутствия необходимости содержать собственный сервер. Однако специфика SaaS-модели накладывает серьезные ограничения на кастомизацию систем и администрирование данных. Разработчики и администраторы часто сталкиваются со сложными вопросами: как правильно настроить права доступа в расширениях, можно ли забирать базу локально для «тяжелой» обработки и как организовать работу филиалов без интернета. В этой статье мы подробно разберем эти темы и предложим оптимальные архитектурные решения.

Часть 1: Собственные права доступа в расширениях 1С:Фреш

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

Рассмотрим техническую сторону этого вопроса. Платформа 1С:Предприятие 8.3 полностью поддерживает добавление и изменение ролей через механизм расширений. Тем не менее в условиях облачного сервиса 1С:Фреш разработчику необходимо строго соблюдать определенные правила безопасности и требования к прохождению аудита. Для предварительной проверки доступов перед прохождением аудита подойдёт обработка для аудита пользователей и опасных прав.

1. Добавление новых объектов и назначение прав

Если ваше расширение создает новые объекты метаданных (справочники, документы, регистры), то по умолчанию доступ к ним для всех пользователей будет закрыт. Чтобы пользователи могли с ними работать, выполним следующие шаги:

  1. Создадим в расширении одну или несколько собственных ролей.
  2. Назначим в этих ролях права на чтение, изменение и добавление для созданных в расширении объектов.
  3. Интегрируем новые роли в систему прав БСП (Библиотеки Стандартных Подсистем), чтобы администратор мог назначить их пользователям через стандартные профили групп доступа.

Проанализируем пример программной интеграции ролей расширения. Для корректной работы прав в управляемом приложении часто требуется программное добавление ролей в справочник ИдентификаторыОбъектовРасширений. Рассмотрим шаблон процедуры, используемой для обновления и регистрации ролей расширения в БСП:


Процедура ПриЗаполненииШаблоновОграниченийДоступа(Шаблоны) Экспорт
    // Здесь разработчик регистрирует специфические шаблоны ограничений
    // для обеспечения безопасности данных на уровне записей (RLS)
КонецПроцедуры

2. Заимствование существующих ролей

Через расширение также можно заимствовать стандартные роли конфигурации-донора. Это позволяет:

3. Прохождение аудита безопасности в 1С:Фреш

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

Часть 2: Особенности выгрузки и загрузки баз в облаке

Рассмотрим вторую популярную проблему, затронутую пользователями: можно ли выгрузить базу из сервиса локально, обработать её тяжелыми обработками и загрузить обратно?

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

1. Что на самом деле выгружается из облака?

При выгрузке базы из личного кабинета 1С:Фреш формируется специальный ZIP-архив данных (файл data_dump.zip). Выясним его структуру: в нем содержатся только пользовательские данные в формате XML или JSON (документы, справочники, константы, записи регистров) и конфигурационный файл описания выгрузки. Сама конфигурация (метаданные) в этот архив не входит. Предполагается, что на вашем локальном компьютере уже установлена точно такая же типовая конфигурация (например, «1С:Бухгалтерия»), в которую вы будете разворачивать эти данные. Для решения возможных проблем при выгрузке пригодится решение для исправления ошибки выгрузки данных из 1С:БП.

2. Требование к идентичности версий

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

3. Сбой интеграций и сопутствующие проблемы

Это самый серьезный минус ручного переноса. При загрузке локальной базы обратно во «Фреш»:

  1. Создается абсолютно новое приложение (новая область данных в терминологии Фреша) с новым уникальным идентификатором.
  2. Меняется URL-адрес базы. Все пользователи должны будут перенастроить свои подключения в тонких клиентах или обновить закладки в браузерах.
  3. Полностью ломаются обмены и синхронизации. Если у вас был настроен обмен (например, между БП и УНФ), уникальные идентификаторы узлов обмена изменятся. Вам придется настраивать все интеграции с нуля.
  4. Слетают привязанные сервисы. Такие интеграции, как «1С-Отчетность», «1С-ЭДО», «DirectBank» и интеграции с торговыми площадками (маркетплейсами), потребуют повторной авторизации, а в некоторых случаях — повторного выпуска сертификатов или обращений в техподдержку. В частности, при использовании модуля интеграции 1С:УНФ с маркетплейсами для синхронизации цен и остатков такие сбои могут потребовать полной перенастройки обмена.
  5. Эксклюзивный доступ. На время выгрузки, обработки и последующей загрузки (которая для баз объемом в несколько гигабайт может занимать часы) работа всех пользователей в системе должна быть полностью прекращена.

Часть 3: Автономное рабочее место (АРМ) как профессиональное решение

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

Для этих целей фирма «1С» создала и активно развивает технологию Автономного рабочего места (АРМ).

1. Как работает технология АРМ?

АРМ функционирует на базе стандартной технологии распределенных информационных баз (РИБ):

2. Преимущества АРМ перед выгрузкой баз

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

3. Системные требования и ограничения АРМ

При планировании перехода на АРМ учтите следующие особенности:

Резюме и рекомендации

Проанализировав все особенности работы в облачной инфраструктуре 1С:Фреш, мы можем сформулировать ключевые правила для эффективной работы:

  1. Использование собственных ролей в расширениях полностью поддерживается. Это стандартный и безопасный способ разграничения прав для уникального функционала. Главное — строго следовать рекомендациям БСП и готовиться к тщательному аудиту кода модераторами сервиса.
  2. Избегайте ручной выгрузки и загрузки баз для оперативной работы. Этот инструмент предназначен исключительно для миграции («коробка — облако» и обратно) или создания архивных копий.
  3. Для мобильной и автономной работы внедряйте АРМ. Это надежная альтернатива, которая сохранит ваши нервы, время и целостность всех интеграций вашей информационной системы.
← На главную