Кто что видит в базе: разграничение доступа пользователей в 1С 8.3

· 9 мин

Содержание

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

Конфигуратор нужен для двух вещей: завести первого администратора и разрабатывать роли в нетиповых базах. Всё остальное делается мышкой в пользовательском режиме.

Как устроена ролевая модель 1С: роли, профили, группы

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

Главное правило, которое объясняет половину проблем:

  • ➕ права в 1С только складываются, запрещающих ролей не бывает;
  • 🔓 если одна роль дала право на объект, другая не может его отнять;
  • 🚫 «урезать» пользователя можно, только убрав роль, а не добавив новую.

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

УровеньЧто этоГде живёт
РольПрава на объекты метаданныхКонфигуратор, менять нельзя без снятия с поддержки
Профиль групп доступаНабор ролей + список видов доступа (организации, склады…)Настройки пользователей и прав → Профили групп доступа
Группа доступаПрофиль + участники + конкретные значения ограниченийНастройки пользователей и прав → Группы доступа

Пример. Профиль «Бухгалтер» содержит десятки ролей. Группа «Бухгалтеры ООО Ромашка» использует этот профиль, в неё входят Иванова и Петрова, а в ограничениях стоит только одна организация. Группа «Бухгалтеры ИП Сидоров» — тот же профиль, другие люди, другая организация.

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

Подготовка: первый администратор и способ входа

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

  1. Откройте базу в режиме предприятия.
  2. Перейдите в Администрирование → Настройки пользователей и прав → Пользователи и создайте пользователя.
  3. Включите ему вход в программу, задайте пароль и добавьте в группу Администраторы.
  4. Перезапустите программу — теперь появится окно авторизации.

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

Способы входа:

  • 🔑 аутентификация 1С — имя и пароль, хранятся в самой базе;
  • 🪟 аутентификация операционной системы — вход под доменной учётной записью Windows без ввода пароля;
  • 🌐 OpenID — для веб-публикаций.

В той же панели настроек есть требования к паролям: минимальная длина, сложность, срок действия. Для бухгалтерии с доступом к зарплате это обязательный минимум — данные сотрудников относятся к персональным, и их защита требуется 152-ФЗ.

Пошаговая настройка прав пользователей через профили групп доступа

Шаг 1. Найдите панель настроек

КонфигурацияПуть
Бухгалтерия предприятия 3.0Администрирование → Настройки пользователей и прав
ЗУП 3.1Администрирование → Настройки пользователей и прав
Управление торговлей 11НСИ и администрирование → Администрирование → Настройки пользователей и прав

Шаг 2. Подберите или скопируйте профиль

Откройте Профили групп доступа. Поставляемые профили (Бухгалтер, Главный бухгалтер, Администратор и др.) редактировать нельзя — их обновляет фирма-разработчик вместе с релизом.

Нужен свой набор прав — скопируйте близкий профиль (кнопка копирования или F9) и правьте копию:

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

Включите отбор «показывать только выбранные роли» — так видно, что реально входит в профиль, а не все 300 ролей конфигурации.

Шаг 3. Создайте группу доступа

  1. Группы доступа → Создать.
  2. Название — по смыслу: «Кассиры, склад Север».
  3. Выберите профиль.
  4. На вкладке участников добавьте пользователей. Удобнее добавлять группы пользователей («Бухгалтерия», «Склад») — новый сотрудник получит права, как только его поместят в нужную группу.
  5. На вкладке ограничений выберите режим «Все запрещены, кроме указанных» и перечислите разрешённые значения.
  6. Запишите.

Шаг 4. Проверьте результат

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

Ограничение доступа на уровне записей (RLS): видеть только свою организацию

Роль отвечает на вопрос «можно ли вообще работать с документом Реализация». RLS (Record Level Security) отвечает на вопрос «какие именно реализации видит этот человек».

Как включить в типовой конфигурации

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

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

Что обычно ограничивают:

  • 🏢 организации — холдинг на одной базе, у каждой бухгалтерии свои юрлица;
  • 📦 склады — кладовщик видит остатки только своего склада;
  • 👥 контрагенты и группы номенклатуры — менеджер работает со своими клиентами;
  • 💼 подразделения в ЗУП — расчётчик видит только свои подразделения.

Как это выглядит в Конфигураторе

В нетиповой базе ограничение пишут в роли: выделяют объект, право «Чтение» и в поле ограничения доступа к данным задают условие на языке запросов. Простейший вариант:

Организация = &ОсновнаяОрганизация

Здесь ОсновнаяОрганизация — параметр сеанса, который заполняют в модуле сеанса при входе пользователя.

Если на чтение наложено ограничение, все запросы к этой таблице в коде должны начинаться с ВЫБРАТЬ РАЗРЕШЕННЫЕ. Без этого слова пользователь получит ошибку Нарушение прав доступа!, даже если ему разрешена половина записей. В типовых конфигурациях это учтено, а в доработках и внешних отчётах — частая причина сбоя.

RLS добавляет условия в каждый запрос, поэтому отчёты под ограниченным пользователем строятся медленнее, чем под администратором. Это нормально; при заметной разнице проверяют сначала индексы и размер регистров, а не отключают ограничения.

Права, которые раздают зря

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

Право / рольЧем опасно
Полные права, администрированиеПользователь сам добавит себе любые роли и снимет ограничения
Открытие внешних отчётов и обработокВнешняя обработка выполняет любой код, в обход интерфейсных ограничений
Удаление помеченных объектовНеобратимо удаляет данные, при ошибке ссылки ломают документы
Изменение закрытого периодаПозволяет править проводки после сдачи отчётности
Конфигуратор (запуск)Доступ к выгрузке всей базы в .dt

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

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

Аудит: кто что изменил и когда

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

Журнал пишет входы, выходы, изменения данных, ошибки. В БП 3.0 и ЗУП 3.1 он открывается через Администрирование → Обслуживание → Журнал регистрации.

Полезные отборы:

  1. Пользователь — всё, что делал конкретный человек за день.
  2. Метаданные — кто менял конкретный документ или справочник.
  3. Уровень «Ошибка» — сбои, в том числе нарушения прав доступа: видно, какое право не дало выполнить действие.

Объём журнала задают в Конфигураторе: Администрирование → Настройка журнала регистрации. Там выбирают уровень (ошибки, предупреждения, информация, примечания) и периодичность разделения файлов. Хранится журнал в каталоге 1Cv8Log: в файловой базе — рядом с файлом базы, в клиент-серверной — в каталоге кластера на сервере 1С.

Журнал показывает факт изменения, но не старое значение реквизита. Чтобы видеть «было/стало», включите в общих настройках администрирования хранение истории изменений (версионирование объектов) для нужных документов и справочников.

Текущие сеансы

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

Права в файловой и клиент-серверной базе: где заканчивается защита

Роли работают одинаково в обоих вариантах. Разница — в том, что защищено вокруг базы.

Файловая базаКлиент-серверная
Где данныеФайл 1Cv8.1CD в сетевой папкеВ СУБД (MS SQL, PostgreSQL)
Доступ к файлуЕсть у каждого, кто работает с базойПользователи к файлам СУБД не обращаются
РискКопию файла можно унести и открыть вне ваших правДанные защищены правами СУБД и сервера 1С
Вход по WindowsРаботаетРаботает, удобно в домене
Админ сервераНетАдминистраторы кластера и базы

В файловом варианте пользователю нужны права на запись в папку базы, иначе 1С не откроет файл. Значит, любой с этими правами может скопировать 1Cv8.1CD. Права в 1С защищают интерфейс, а не файл. Для бухгалтерии с зарплатой и персональными данными это довод перейти на клиент-сервер или хотя бы на веб-доступ через публикацию.

В клиент-серверном варианте проверьте три вещи:

  • 🛡️ администраторы кластера заданы. Если список пуст, любой, кто запустит консоль администрирования и подключится к агенту (порт 1540), может управлять кластером, в том числе удалить базу;
  • 🔐 пароль пользователя СУБД, под которым 1С подключается к базе, не совпадает с паролем пользователей 1С и не роздан бухгалтерии;
  • 📁 профили безопасности кластера ограничивают доступ кода (включая внешние обработки) к файлам и внешним ресурсам сервера — их назначают базе в консоли кластера.

Частые ошибки при ограничении доступа

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

Ещё две ошибки, которые не дают явного сообщения:

  • ❌ общий логин на отдел — «Бухгалтер1» для трёх человек. Журнал регистрации становится бесполезен: непонятно, кто удалил документ;
  • ❌ уволенный сотрудник остаётся с правом входа. Не удаляйте его из справочника (на нём висят документы), а снимите флажок входа в программу в карточке.

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

Можно ли запретить пользователю одно действие, оставив остальное?
Только убрав роль, которая это действие разрешает. Запрещающих ролей в 1С нет. Скопируйте профиль и снимите флажок у нужной роли.
Почему поставляемый профиль нельзя изменить?
Его содержимое обновляется вместе с конфигурацией. Изменения в нём потерялись бы при следующем обновлении, поэтому правят копию.
Нужно ли снимать конфигурацию с поддержки, чтобы настроить права?
Нет, для типовых конфигураций всё делается в режиме предприятия. Новую роль можно добавить через расширение конфигурации, не снимая основную с поддержки.
Как скрыть пользователя в окне входа?
В свойствах пользователя в Конфигураторе снимите флажок «Показывать в списке выбора». Логин придётся вводить вручную.
Видит ли администратор пароли пользователей?
Нет. Пароль хранится в виде хеша, администратор может только задать новый.

Источники

  • Федеральный закон от 27.07.2006 № 152-ФЗ «О персональных данных»