Какие роли и права есть у пользователя 1С: три способа увидеть правду

· 10 мин

Содержание

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

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

Роль, профиль, группа доступа: что за чем стоит

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

В конфигурациях на Библиотеке стандартных подсистем (БСП) над ролями надстроены ещё два уровня:

  • 🧩 Профиль групп доступа — шаблон: набор ролей плюс виды доступа (например, «Организации»). Пример поставляемых профилей в Бухгалтерии: «Бухгалтер», «Главный бухгалтер», «Администратор».
  • 👥 Группа доступа — конкретное применение профиля: «Бухгалтеры ООО Ромашка». В группе указаны участники и значения ограничений (какие организации разрешены).
  • 👤 Пользователь — входит в одну или несколько групп. Его итоговые роли = объединение ролей всех профилей всех его групп.

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

УровеньГде смотретьЧто показывает
Роли пользователя ИБКонфигуратор, карточка пользователя, вкладка «Прочие»Фактический итоговый набор ролей
Права самой ролиКонфигуратор, ветка Общие → РолиКакие действия роль разрешает по каждому объекту
Группы и профилиРежим Предприятия, раздел «Администрирование»Почему у пользователя именно такие роли
Ограничения записейГруппа доступа, вкладка с видами доступаКакие организации, склады и т. п. ему доступны

Проверка ролей пользователя в Конфигураторе

Конфигуратор показывает «сырую» правду платформы: какие роли реально записаны за пользователем. Это лучший способ проверить, совпадает ли картина с тем, что настроено в группах доступа.

Список ролей конкретного пользователя

  1. Запустите Конфигуратор под администратором.
  2. Откройте Администрирование → Пользователи. Открывать саму конфигурацию для этого не нужно.
  3. Двойным щелчком откройте нужного пользователя.
  4. Перейдите на вкладку «Прочие». В списке «Доступные роли» отмечены роли этого пользователя.

💡 Если отмечена роль ПолныеПрава или АдминистраторСистемы, дальше можно не искать: у пользователя административный доступ. Обычному бухгалтеру эти роли не нужны.

Какие права даёт роль

  1. Откройте конфигурацию: Конфигурация → Открыть конфигурацию.
  2. В дереве перейдите в Общие → Роли и откройте нужную роль.
  3. Слева — дерево объектов, справа — список прав выбранного объекта с флажками.

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

Все роли сразу по одному объекту

Чтобы понять, какая роль даёт доступ, например, к документу «Реализация», удобнее команда «Все роли» из контекстного меню ветки Общие → Роли. Откроется сводная таблица: объекты по строкам, роли по колонкам. Выберите объект и сразу видно, в каких ролях есть право чтения или проведения.

Ничего не меняйте в ролях типовой конфигурации на поддержке. Правка роли снимает объект с замка поставщика и усложняет обновления. Если нужна новая комбинация прав — создайте свою роль в расширении конфигурации.

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

Для бухгалтера-администратора это основной способ: Конфигуратор не нужен, а видно не только роли, но и причину их появления.

Через карточку пользователя

  1. Откройте Администрирование → Настройки пользователей и прав → Пользователи.
  2. Откройте карточку сотрудника.
  3. В панели навигации карточки выберите «Права доступа».

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

Через профили групп доступа

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

Отчёты по правам

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

Поиск по отчётам проще всего вести с панели «Настройки пользователей и прав»: ссылки на отчёты находятся в её нижней части или в командной панели списка пользователей.

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

Проверка ролей кодом: внешняя обработка

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

Встроенные функции платформы

  • РольДоступна("ИмяРоли") — есть ли роль у текущего пользователя сеанса.
  • ПравоДоступа("Чтение", ОбъектМетаданных, РольИлиПользователь) — есть ли право у роли или у пользователя ИБ. Третий параметр принимает объект роли из Метаданные.Роли или пользователя ИБ.
  • ПользователиИнформационнойБазы.ПолучитьПользователей() — массив всех пользователей ИБ, у каждого есть коллекция Роли.

В конфигурациях на БСП есть свои обёртки: Пользователи.РолиДоступны("Роль1, Роль2") и Пользователи.ЭтоПолноправныйПользователь(). В доработках лучше пользоваться ими: они учитывают полноправных пользователей.

Пример: роли всех пользователей

Создайте в Конфигураторе внешнюю обработку (Файл → Новый → Внешняя обработка), добавьте форму и серверную процедуру:

&НаСервереБезКонтекста
Функция РолиВсехПользователей()

    Результат = "";
    Для Каждого ПользовательИБ Из ПользователиИнформационнойБазы.ПолучитьПользователей() Цикл
        СписокРолей = Новый Массив;
        Для Каждого Роль Из ПользовательИБ.Роли Цикл
            СписокРолей.Добавить(Роль.Имя);
        КонецЦикла;
        Результат = Результат + ПользовательИБ.Имя + ": "
            + СтрСоединить(СписокРолей, ", ") + Символы.ПС;
    КонецЦикла;
    Возврат Результат;

КонецФункции

Вызовите функцию из команды формы и выведите строку в многострочное поле или через Сообщить().

Пример: право конкретного пользователя на объект

&НаСервереБезКонтекста
Функция ЕстьПравоЧтения(ИмяПользователя, ПолноеИмяОбъекта)

    ПользовательИБ = ПользователиИнформационнойБазы.НайтиПоИмени(ИмяПользователя);
    Если ПользовательИБ = Неопределено Тогда
        Возврат Ложь;
    КонецЕсли;
    ОбъектМетаданных = Метаданные.НайтиПоПолномуИмени(ПолноеИмяОбъекта);
    Возврат ПравоДоступа("Чтение", ОбъектМетаданных, ПользовательИБ);

КонецФункции

Пример вызова: ЕстьПравоЧтения("Иванова", "Документ.РеализацияТоваровУслуг").

ПравоДоступа проверяет права ролей, но не ограничения на уровне записей. «Истина» означает, что объект в принципе доступен. Увидит ли пользователь конкретный документ — решает RLS.

Запустить обработку может только пользователь с правом открывать внешние обработки, обычно администратор. В свежих релизах платформа и БСП дополнительно спрашивают подтверждение при открытии внешнего файла — это защита от вредоносного кода, отвечайте «Да», только если обработку писали сами.

Ограничения доступа на уровне записей (RLS)

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

В типовых конфигурациях руками условия не пишут. Порядок такой:

  1. Включите флажок «Ограничивать доступ на уровне записей» в Администрирование → Настройки пользователей и прав.
  2. В профиле групп доступа отметьте виды доступа, по которым режете данные: например, «Организации».
  3. В каждой группе доступа укажите конкретные разрешённые значения: «Разрешены выбранные» и список организаций.

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

Включать RLS лучше вне рабочего времени: на большой базе первое обновление доступа заметно нагружает сервер.

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

  • 🔍 Пользователь открывает список документов, но видит меньше записей, чем коллега.
  • 🔍 Ошибки Нарушение прав доступа! нет, а отчёт показывает пустые данные по одной из организаций.
  • 🔍 В отчёте по правам объект доступен на чтение, а запись всё равно не видна.

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

Порядок проверки, когда пользователь пишет «нет доступа»

Жалоба обычно звучит размыто: «не открывается», «ничего не вижу», «кнопка серая». Чтобы не гадать, идите от общего к частному. Каждый шаг отсекает один уровень.

  1. Попросите точный текст сообщения и название объекта. Скриншот или копия текста из окна ошибки. Нарушение прав доступа! — это роли или RLS. Если сообщения нет, а нужной команды просто нет на форме, обычно не хватает конкретного права: например, документ можно записать, но нельзя провести.
  2. Проверьте, что сеанс свежий. Если права меняли сегодня, пусть пользователь закроет 1С и войдёт заново.
  3. Посмотрите группы доступа в карточке. Есть ли среди профилей тот, что нужен для этой работы: кассир, кадровик, менеджер по продажам.
  4. Постройте отчёт по правам на конкретный объект. Если права чтения или изменения нет ни в одной группе — дело в ролях, добавляйте группу.
  5. Если права есть — смотрите виды доступа. Нужная организация или склад должны быть среди разрешённых значений во всех группах, через которые пользователь работает с этим объектом.
  6. Воспроизведите под тестовым пользователем. Те же группы, свой пароль. Если ошибка повторилась — настройка в базе; если нет — смотрите сеанс и рабочее место сотрудника.

Когда виноваты не права

Иногда «серая кнопка» к правам отношения не имеет:

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

Простой тест: если у администратора то же самое — ищите в настройках программы, а не в правах.

Частые ошибки при раздаче ролей

  • ❌ Роль ПолныеПрава «на время». Её дают, чтобы человек «сделал одну операцию», и забывают снять. Раз в квартал проверяйте список пользователей с административным профилем.
  • ❌ Правка поставляемого профиля. Система не даст, а обходные пути ломают обновление. Скопируйте профиль и правьте копию.
  • ❌ Одна группа на всё. Профиль «Главный бухгалтер» вместе с кадровыми данными у человека, которому нужна только касса. Права суммируются: любая лишняя группа расширяет доступ.
  • ❌ Проверка «под администратором». Администратор видит всё, и проблема пользователя не воспроизводится. Заведите тестового пользователя, включите в те же группы и войдите под ним.
  • ❌ Удалённый сотрудник остаётся в базе. У уволенного снимайте флажок «Вход в программу разрешён», а не только меняйте пароль.

💡 Удобный приём: держите таблицу «должность → группы доступа». Новому сотруднику группы назначают по ней, а не «как у Марии», у которой за пять лет накопились лишние права.

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

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