К статье
Практический материал

Администрирование · 11 мин

Где хранятся роли в 1С и как их найти

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

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

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

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

Где в конфигураторе находятся объекты «Роль»

Дерево конфигурации открывается через меню «Конфигурация → Открыть конфигурацию». Объекты «Роль» расположены в ветке «Общие → Роли». Каждая роль — это самостоятельный объект метаданных, в котором на закладках «Права» и «Шаблоны ограничений» задаётся, какие действия разрешены над справочниками, документами, регистрами и другими объектами.

Двойной щелчок по роли открывает окно редактирования прав: слева — список объектов конфигурации, справа — флажки прав (чтение, добавление, изменение, удаление, просмотр, проведение и другие). Набор доступных прав зависит от типа объекта: у документов есть проведение и отмена проведения, у регистров — чтение и изменение записей.

Физически конфигурация хранится внутри файла информационной базы (файл 1Cv8.1CD для файлового варианта) или в базе данных на сервере СУБД (MS SQL, PostgreSQL и другие). Отдельных файлов ролей в каталоге базы нет — это часть структуры конфигурации.

Где хранится привязка ролей к пользователям

Список пользователей и назначенные им роли — это данные информационной базы, а не конфигурации. В конфигураторе список открывается через «Администрирование → Пользователи». В карточке пользователя на закладке «Прочие» отображаются доступные роли с флажками: отмеченные роли и есть фактически назначенные права.

В типовых конфигурациях (например, построенных на Библиотеке стандартных подсистем) поверх базового механизма работает подсистема «Управление доступом». Там роли назначаются не напрямую, а через профили групп доступа: администратор включает пользователя в группу доступа, а группа ссылается на профиль, внутри которого перечислены роли. В этом случае прямое редактирование флажков в карточке пользователя часто заблокировано или не имеет эффекта.

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

Как найти нужную роль и понять, что она даёт

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

Чтобы понять, какие роли есть у конкретного пользователя, удобнее всего открыть его карточку в списке пользователей. Обратная задача — узнать, у кого назначена конкретная роль, — решается перебором пользователей или обработкой, которую пишут под конкретную конфигурацию; штатного отчёта «роль → пользователи» в базовом конфигураторе нет.

Ещё один практический приём — поиск ссылок на роль в коде. Через «Правка → Глобальный поиск» по имени роли находятся проверки вида РольДоступна("ПолныеПрава") в модулях. Это показывает, где в логике программы роль влияет на поведение системы помимо стандартных прав на объекты.

Как посмотреть роли пользователя
  1. 1
    Откройте конфигуратор и перейдите в «Администрирование → Пользователи».
  2. 2
    Откройте карточку нужного пользователя и перейдите на закладку «Прочие».
  3. 3
    Посмотрите отмеченные флажками роли — это назначенные права.
  4. 4
    Если конфигурация типовая, дополнительно проверьте членство пользователя в группах доступа в режиме «1С:Предприятие».

Как изменить права: назначение роли и редактирование роли

Назначение роли пользователю — безопасная операция, выполняемая без монопольного доступа: откройте карточку пользователя, отметьте нужные роли, сохраните. Изменения применяются к новым сеансам; текущему сеансу пользователя может потребоваться перезапуск, чтобы права вступили в силу.

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

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

Роли в файлах поставки, выгрузках и расширениях

При выгрузке конфигурации в файлы (Конфигурация → Выгрузить конфигурацию в файлы) каждая роль сохраняется в виде отдельного XML-файла в каталоге Roles. Внутри — декларация роли и набор прав в структурированном виде. Этот формат используется в системах контроля версий и при сравнении конфигураций.

В файлах поставки (.cf) и обновлениях (.cfu) роли упакованы внутри бинарного контейнера и недоступны для прямого чтения — их можно увидеть только после загрузки конфигурации в базу или сравнения конфигураций в конфигураторе.

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

Способы изменить права

Назначение роли пользователю

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

Копия типовой роли с правками

Гибко, но требует обновления конфигурации БД и сопровождения копии при обновлениях.

Расширение конфигурации

Не трогает основную конфигурацию, удобно при обновлениях. Ограничение: не все механизмы прав доступны в расширениях.

Профили групп доступа

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

Типичные ошибки и ограничения

Частая ошибка — поиск ролей в файловой системе сервера. Администраторы, привыкшие к другим системам, ищут «файл с ролями» в каталоге базы, но там ничего читаемого нет: всё находится внутри файла 1Cv8.1CD или таблиц СУБД, и прямое редактирование этих данных недопустимо — оно разрушит базу.

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

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

Типичные ошибки
01
Редактирование данных базы напрямую через СУБД вместо штатных механизмов — приводит к повреждению информационной базы.
02
Выдача роли «ПолныеПрава» вместо точечной диагностики недостающего права — открывает лишний доступ.
03
Изменение типовой роли без копирования — правки затираются при обновлении конфигурации.
04
Назначение ролей в карточке пользователя в типовой конфигурации с профилями групп доступа — изменения могут не сработать или быть перезаписаны.

Как проверить результат после изменения прав

Базовая проверка — войти под целевым пользователем и выполнить операцию, ради которой менялись права. Успешное выполнение и отсутствие лишних возможностей (например, кнопка удаления недоступна, если удаление не разрешалось) подтверждают корректность настройки.

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

Контрольные точки

Как проверить результат

Доступ к нужной операции под пользователем
Норма

Операция выполняется без сообщений о нарушении прав

Тревожный признак

Отказ в доступе — не хватает роли или права внутри роли

Отсутствие лишних прав
Норма

Недоступные действия скрыты или заблокированы

Тревожный признак

Пользователь видит и может выполнять действия за пределами задачи

Журнал регистрации
Норма

Нет новых событий отказа в доступе

Тревожный признак

Повторяющиеся отказы по конкретному объекту

FAQ

Можно ли найти роли в файле базы 1Cv8.1CD напрямую?

Нет. Файл имеет внутренний бинарный формат, и роли вместе с остальной конфигурацией недоступны для чтения сторонними средствами. Работа с ролями ведётся только через конфигуратор или штатные механизмы платформы.

Почему после обновления конфигурации у пользователей пропали права?

Наиболее вероятная причина — перед обновлением были изменены типовые роли, и обновление вернуло их исходное состояние. Реже — роль была удалена из конфигурации поставщиком. Решение: вести собственные роли-копии и назначать их вместо изменённых типовых.

Чем роль отличается от профиля группы доступа?

Роль — объект конфигурации с набором прав, создаётся разработчиком. Профиль группы доступа — пользовательская настройка в типовых конфигурациях, которая объединяет роли и назначается группам пользователей без входа в конфигуратор.

Нужен ли монопольный доступ, чтобы назначить роль пользователю?

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

Как узнать, какого права не хватает при отказе в доступе?

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

Можно ли добавить роль, не снимая конфигурацию с поддержки?

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

Итог

Что важно запомнить

Роли как объекты хранятся в конфигурации (Общие → Роли), привязка к пользователям — в информационной базе. Назначение ролей не требует обновления конфигурации, а изменение состава прав — требует. Типовые роли лучше не править напрямую: используйте копии или расширения, а перед любыми массовыми изменениями делайте резервную копию.