Роли и права доступа в 1С 8.3: где смотреть и как проверить

· 9 мин

Содержание

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

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

Разберём оба способа, а также как собрать эффективные права пользователя и что делать, когда программа пишет «недостаточно прав».

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

Роль — это объект конфигурации. Она описывает, к каким справочникам, документам, отчётам и регистрам у пользователя есть доступ и на каком уровне: чтение, добавление, изменение, удаление. Создаёт и правит роли только разработчик в Конфигураторе.

Напрямую пользователю роли в типовых конфигурациях (БП 3.0, ЗУП 3.1, УТ 11) не назначают. Между ролью и пользователем стоят два промежуточных звена:

  • 🔹 Профиль группы доступа — именованный набор ролей (например, «Бухгалтер», «Кадровик», «Только просмотр»).
  • 🔹 Группа доступа — связывает профиль с конкретными пользователями и, при необходимости, с видами доступа: ограничениями по организациям, складам, подразделениям.

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

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

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

Как посмотреть права пользователя в режиме Предприятия

Это основной способ для администратора и бухгалтера — Конфигуратор для него не нужен.

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

На вкладке Пользователи в самой группе доступа видно, кто ещё входит в ту же группу. Это удобно, когда нужно сравнить права двух сотрудников: часто проблема в том, что у одного группа есть, а у другого — нет. Откройте одну и ту же группу и сверьте списки — так быстрее, чем сравнивать карточки по очереди.

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

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

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

Как открыть роль в Конфигураторе и прочитать таблицу прав

Когда нужно понять, что конкретно разрешает роль, открывают Конфигуратор. Для этого нужны права администратора на базу.

  1. Запустите базу в режиме Конфигуратор.
  2. В дереве конфигурации раскройте ветку Общие → Роли.
  3. Двойной клик по роли открывает окно редактора прав.

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

ПравоЧто разрешает
ЧтениеПолучать данные объекта программно
ПросмотрВидеть данные в формах интерфейса
ДобавлениеСоздавать новые элементы и документы
ИзменениеРедактировать уже существующие данные
УдалениеФизически удалять данные из базы
ПроведениеПроводить документы (только для документов)
РедактированиеИнтерактивно менять данные в открытой форме

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

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

Рядом есть вкладка Шаблоны ограничений — туда выносят готовые условия RLS, чтобы не дублировать их в каждом объекте. Если видите, что право есть, а доступа нет, смотреть надо именно сюда и в виды доступа группы.

После изменения роли в Конфигураторе выполните Конфигурация → Обновить конфигурацию базы данных (клавиша F7). Пока конфигурация не обновлена, правки прав не действуют.

Как проверить эффективные права пользователя

Главное правило: права ролей суммируются по логике ИЛИ — если хотя бы одна из назначенных ролей разрешает действие, оно пользователю доступно. Отнять право, добавив вторую роль, нельзя.

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

Разберём на примере. Пользователь входит в две группы: «Бухгалтер» (роль разрешает проводить документы поступления) и «Только просмотр» (роль разрешает лишь чтение). Можно подумать, что вторая группа ограничит первую. На деле пользователь сможет и просматривать, и проводить — права сложились. Чтобы запретить проведение, группу «Бухгалтер» нужно снять, а не добавлять ограничивающую.

Чтобы собрать полную картину по одному человеку, идут по трём точкам:

  • через карточку пользователя (Права доступа) смотрят, в какие группы он входит;
  • в Профилях групп доступа смотрят, какие роли внутри каждой группы;
  • в Группах доступа на вкладке видов доступа смотрят ограничения — по каким организациям и складам роль реально работает.
Где искать права пользователя
Выполнено: 0 / 4

Почему программа пишет «недостаточно прав»

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

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

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

Если ошибка повторяется у нескольких сотрудников одного отдела, скорее всего не хватает одной роли в их общем профиле — исправление в профиле закроет вопрос сразу для всех. А точечная проблема у одного человека почти всегда решается его группой доступа, а не правкой ролей в Конфигураторе.

Диагностика: выберите симптом

Роли в файловой и клиент-серверной базе

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

ЗадачаФайловая базаКлиент-серверная база
Где хранятся ролиВ конфигурации базыВ конфигурации базы (так же)
Кто сейчас работаетСписок активных пользователей в самой программеКонсоль администрирования серверов или команда rac session list
Освободить базуВсе пользователи должны выйтиЗавершение сеансов через консоль кластера

Для клиент-серверной базы список сеансов и их завершение доступны через консоль администрирования или утилиту rac. Полный набор команд и параметров смотрите в справке rac help; для начала хватает rac cluster list (список кластеров) и rac session list (сеансы).

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

Частые ошибки при настройке ролей

  • 🔸 Роли назначены напрямую в Конфигураторе в типовой конфигурации. Это обходит механизм групп доступа и мешается при обновлениях. В типовых базах назначайте права только через профили.
  • 🔸 Всем выдали «Полные права», чтобы «не разбираться». Защита при этом исчезает полностью, а в журнале невозможно понять, кто за что отвечал.
  • 🔸 Ждут, что вторая роль отнимет лишнее право. Роли только добавляют доступ. Чтобы ограничить пользователя, роль убирают или настраивают RLS, а не добавляют ещё одну.
  • 🔸 Изменили роль в Конфигураторе и забыли обновить конфигурацию базы данных. Правки не вступают в силу, и администратор долго ищет несуществующую проблему.
  • 🔸 Перепутали отсутствие права и выключенный функционал. Если раздел скрыт, сначала проверьте функциональные опции в настройках программы, и только потом роли.

Перед массовой раздачей или пересмотром прав сделайте резервную копию базы: откатывать разграничение доступа вручную — это часы работы.

Частые вопросы

Можно ли посмотреть все роли пользователя в одном отчёте?
Единого окна «все роли сразу» в типовой конфигурации нет. Ближе всего — форма Права доступа в карточке пользователя: она показывает группы доступа, а состав ролей каждой группы смотрят в профиле.
Как узнать роль пользователя без Конфигуратора?
Через режим Предприятия: Администрирование → Настройки пользователей и прав. Карточка показывает группы, профиль группы — список ролей. А вот содержание прав внутри самой роли без Конфигуратора не увидеть.
Чем роль отличается от профиля группы доступа?
Роль — элемент конфигурации с таблицей прав, её делает разработчик. Профиль — набор ролей для назначения пользователям, его настраивает администратор прямо в режиме Предприятия.
У пользователя две группы с разными правами — какие сработают?
Права суммируются: доступно всё, что разрешает хотя бы одна из групп. Более строгая группа не перекрывает более свободную.
Почему после смены роли пользователь всё равно не видит документ?
Либо он не перезашёл в программу, либо право на объект есть, но запись отсекает ограничение на уровне записей — например, документ по чужой организации.