Роли и права доступа в 1С: создание и настройка

· 9 мин

Содержание

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

Но в типовых конфигурациях на базе БСП (Бухгалтерия 3.0, ЗУП 3.1, Управление торговлей 11) права конечному пользователю почти никогда не раздают ролями напрямую. Там работает слой профилей групп доступа — он собирается уже в режиме 1С:Предприятие, в разделе Администрирование. Роль в Конфигураторе — это «кирпич», а профиль — готовая стена из таких кирпичей.

Ниже — оба уровня: как собрать роль в Конфигураторе и как выдать права живому пользователю через группы доступа.

Два уровня настройки доступа и где они живут

Прежде чем что-то создавать, важно понять, на каком уровне вы работаете.

  • 🧱 Роль — объект конфигурации. Живёт в Конфигураторе, меняется разработчиком. Описывает права на объекты метаданных (справочники, документы, регистры) и глобальные права (запуск клиента, монопольный режим и т. п.).
  • 🧩 Профиль группы доступа — объект режима Предприятия (механизм БСП). Объединяет несколько ролей в осмысленный набор: «Бухгалтер», «Кадровик», «Кладовщик».
  • 👤 Группа доступа — связывает профиль с конкретными пользователями и задаёт значения доступа (конкретные организации, склады, подразделения).

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

Где настраивать доступ в вашем случае?

Интерфейс редактора роли в Конфигураторе

Откройте Конфигуратор (платформа 8.3, интерфейс «Такси»). В дереве конфигурации найдите ветку Общие, внутри — Роли. Двойной щелчок по существующей роли открывает редактор прав.

Окно делится на три части:

  1. Слева — дерево объектов метаданных: корень конфигурации, затем справочники, документы, регистры, обработки и так далее.
  2. Справа — таблица прав для выделенного слева объекта: Чтение, Добавление, Изменение, Удаление, Проведение, Просмотр, Редактирование и другие. Набор прав зависит от типа объекта.
  3. Снизу справа — поле Ограничения доступа к данным (RLS) для выбранного права.

Под деревом объектов есть флажки, которые экономят массу кликов:

  • Устанавливать права для новых объектов — роль автоматически получит права на объекты, которые добавят в конфигурацию позже. Для роли «полного доступа» удобно, для узкой роли — опасно.
  • Устанавливать права для реквизитов и табличных частей по умолчанию — право на объект распространяется на его реквизиты.
  • Независимые права подчинённых объектов — тонкая настройка, по умолчанию выключена.

Права на корень конфигурации (самый верхний элемент дерева) — это глобальные права: Администрирование, Монопольный режим, Активные пользователи, Тонкий клиент, Веб-клиент, Сохранение данных пользователя, Интерактивное открытие внешних обработок. Без права на тонкий или веб-клиент пользователь просто не сможет войти в базу привычным способом.

Как добавить новую роль и задать права

Порядок действий для своей конфигурации или расширения:

  1. В дереве конфигурации щёлкните правой кнопкой по ветке Роли → Добавить.
  2. В палитре свойств задайте Имя (латиницей, без пробелов, например МенеджерЗаказов) и Синоним (как роль увидит пользователь, например «Менеджер заказов»).
  3. Откройте редактор прав двойным щелчком по новой роли.
  4. Выделяйте объект слева и отмечайте нужные права справа. Начинайте с минимума: Чтение и Просмотр для справочников, которые пользователь только смотрит; полный набор — только там, где он реально вводит данные.
  5. Не забудьте права на общие объекты: подсистемы (чтобы разделы были видны в интерфейсе), общие формы, константы.
  6. Проверьте глобальные права на корне: как минимум право на тип клиента, через который входят пользователи.
  7. Сохраните конфигурацию (F7) и обновите конфигурацию базы данных (F7 ещё раз или кнопка обновления).

Обновление конфигурации базы данных со структурными изменениями требует монопольного доступа — все активные сеансы придётся завершить. Делайте это в окно, когда в базе никто не работает, и после резервной копии. Само по себе добавление роли без изменения структуры данных монополии не требует, но на практике обновление чаще делают разом.

Чтобы не собирать права с нуля, роль удобно создавать на основе похожей: скопируйте существующую роль (Ctrl+C / Ctrl+V на ветке Роли), переименуйте и уберите лишнее. Для узкой роли это быстрее, чем отмечать сотни флажков вручную.

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

Разберём набор прав подробнее. Для документа права делятся на две группы. Первая — доступ к данным: Чтение, Добавление, Изменение, Удаление. Вторая — интерактивные действия, которые пользователь делает мышью: Просмотр, Редактирование, Интерактивное добавление, Проведение, Отмена проведения, Интерактивная пометка удаления. Разделение неочевидно, но важно: без права Чтение пользователь не увидит документ вообще, а без Просмотр — не сможет открыть форму, хотя данные формально доступны программно. На практике для «смотрящего» пользователя ставят Чтение + Просмотр, для оператора — добавляют Добавление, Изменение, Проведение и соответствующие интерактивные права.

Ограничение доступа к данным (RLS)

Права на объект — это «можно ли вообще видеть документы». RLS (Row Level Security, ограничение на уровне записей) отвечает на вопрос тоньше: «какие именно записи можно видеть». Классический пример — менеджер видит только заказы своего склада, а не все заказы в базе.

Настраивается RLS в том же редакторе роли:

  1. Выделите объект и право (например, Чтение документа «Заказ клиента »).
  2. В нижнем поле Ограничения доступа к данным добавьте строку.
  3. Выберите Поле (например, Склад) и в колонке Ограничение напишите условие.

Условие пишется на языке, похожем на язык запросов 1С. Упрощённо: разрешаем запись, если её поле совпадает со значением, доступным текущему пользователю. Чтобы не копировать одинаковый текст в десятки объектов, используют вкладку Шаблоны ограничений — там хранятся именованные заготовки, которые потом подставляют в конкретные права.

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

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

Профили групп доступа: сборка набора ролей

Этот и следующие разделы — уже режим 1С:Предприятие, типовая конфигурация на БСП.

Путь: Администрирование → Настройки пользователей и прав → Профили групп доступа. В типовой поставке профили уже есть: «Администратор», «Бухгалтер», «Кадровик», «Открытие внешних отчётов и обработок» и другие. Их можно использовать как есть.

Чтобы собрать свой профиль:

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

Типовые профили поставляются как «поставляемые» — их не редактируют напрямую, а при необходимости создают копию (Создать на основании или просто новый профиль с нужным набором ролей). Так изменения не слетят при обновлении.

Что проверить в новом профиле
Выполнено: 0 / 5

Назначение прав пользователям информационной базы

Права получает не пользователь напрямую, а пользователь через группу доступа. Путь: Администрирование → Настройки пользователей и прав → Пользователи.

  1. Откройте карточку пользователя (или создайте нового кнопкой Создать).
  2. Перейдите по ссылке Права доступа в карточке пользователя.
  3. Отметьте группы доступа, в которые входит пользователь. Каждая группа доступа связана с профилем.
  4. Если нужной группы доступа ещё нет — создайте её в разделе Группы доступа, укажите профиль и перечислите разрешённые значения видов доступа (например, конкретные организации).
  5. Запишите изменения.

Один пользователь может входить в несколько групп доступа — тогда его права суммируются. Запретить что-то одной группой, если другая это разрешает, нельзя: в 1С права складываются, а не вычитаются.

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

Где настраиваетеЧто назначаетеКогда это ваш случай
Предприятие → Группы доступаПрофиль + значения доступаТиповая конфигурация на БСП
Конфигуратор → Пользователи → ПрочиеРоли напрямуюСвоя конфигурация, нет БСП

Проверка и отладка назначенных прав

Назначили права — проверьте их до того, как это сделает пользователь.

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

Что помогает в диагностике:

  • 📄 В типовых на БСП есть отчёт по правам доступа в разделе Администрирование → Настройки пользователей и прав — он показывает, какие роли и значения доступа фактически действуют для пользователя.
  • 🧪 В Конфигураторе можно запустить отладку (Отладка → Начать отладку) под конкретным пользователем и видеть, на каком именно праве срабатывает отказ.
  • 🔎 Служебное сообщение «Недостаточно прав на …» прямо называет объект и операцию — по нему сразу понятно, какое право добавить в роль.

Если пользователь жалуется, что «ничего не видит», первым делом смотрите права на подсистемы (разделы) и на тип клиента. Чаще отсутствует не право на документ, а право на сам раздел интерфейса или на запуск нужного клиента.

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

Чем роль отличается от профиля групп доступа?
Роль — объект конфигурации, её создаёт разработчик в Конфигураторе. Профиль — объект режима Предприятия, он объединяет несколько ролей в готовый набор под должность. Пользователю выдают профиль через группу доступа, а не роль напрямую.
Можно ли создать роль прямо в режиме Предприятия, без Конфигуратора?
Нет. Новую роль добавляют только в Конфигураторе (или в расширении конфигурации). В режиме Предприятия из уже существующих ролей собирают профили групп доступа.
Почему после добавления роли пользователь всё равно не видит раздел?
Скорее всего, в роли нет права на соответствующую подсистему или на объекты раздела. Видимость разделов интерфейса управляется правами на подсистемы, а не только на документы.
Как ограничить доступ, чтобы сотрудник видел только свою организацию?
Через виды доступа в группе доступа: выбираете вид доступа «Организации» и перечисляете разрешённые. На уровне конфигурации это обеспечивает механизм RLS, но заполняется он значениями в группе доступа, без ручного кода.
Права у пользователя из двух групп доступа складываются или вычитаются?
Складываются. Если одна группа разрешает операцию, запретить её второй группой нельзя. Поэтому не добавляйте пользователю лишние группы «про запас».