Настройка прав пользователей в 1С:Предприятие 8.2 — критически важный этап администрирования системы, от которого зависит не только безопасность данных, но и эффективность работы сотрудников. Неправильно настроенные права могут привести к утечкам информации, ошибкам в учете или, наоборот, избыточным ограничениям, мешающим выполнению задач. В этой статье мы разберем все этапы настройки прав — от создания ролей до тонкой настройки доступа к конкретным документам и отчетам.
Версия 8.2 имеет свои особенности в управлении правами по сравнению с более поздними редакциями (8.3+), поэтому инструкции из новых версий здесь не подойдут. Мы сфокусируемся на классическом интерфейсе и типичных сценариях: ограничение доступа по подразделениям, настройка прав на уровне записей, работа с ролями и профилями групп. Особое внимание уделим настройке прав через конфигуратор — единственный способ гибко управлять доступом в 8.2 без использования дополнительных модулей.
Подготовка к настройке прав: что нужно знать до начала
Прежде чем приступать к изменению прав, важно понять ключевые концепции системы безопасности 1С 8.2:
- 🔑 Роли — наборы прав, которые присваиваются пользователям. Одна роль может включать доступ к нескольким объектам метаданных (справочникам, документам, отчетам).
- 👥 Пользователи — учетные записи, которым назначаются роли. В 8.2 пользователи создаются непосредственно в конфигураторе.
- 📁 Профили групп доступа — инструмент для ограничения прав на уровне записей (например, доступ только к документам своего подразделения).
- 🔒 Права на уровне записей (RLS) — механизм, позволяющий ограничивать доступ к конкретным строкам в базах данных (например, менеджер видит только своих клиентов).
В 1С 8.2 нет графического интерфейса для настройки RLS — все изменения вносятся через Конфигуратор вручную. Это требует аккуратности: ошибка в коде может привести к полной блокировке доступа. Также стоит помнить, что некоторые объекты (например, Планы видов характеристик) имеют свои особенности настройки прав.
⚠️ Внимание: В версии 8.2 отсутствует механизм "Права по умолчанию" для новых объектов, который появился в 8.3. Все права здесь настраиваются явно.
Перед началом работ:
- Сделайте резервную копию базы данных (через
Администрирование → Выгрузить информационную базу). - Убедитесь, что у вас есть права администратора (роль
АдминистраторилиПолные права). - Составьте список пользователей и требуемых для них прав — это сэкономит время.
Создание и редактирование ролей в 1С 8.2
Роли — основа системы безопасности. В 1С 8.2 они создаются и редактируются только через Конфигуратор. Рассмотрим процесс по шагам:
- Откройте конфигуратор и перейдите в
Объекты → Роли. - Нажмите
Добавитьили выберите существующую роль для редактирования. - В окне редактирования роли укажите:
- Название (например,
МенеджерПоПродажам). - Описание (необязательно, но рекомендуется для документации).
- Права на объекты метаданных (справочники, документы, отчеты и т.д.).
- Название (например,
- 📖 Чтение — просмотр данных.
- ✏️ Добавление — создание новых записей.
- 🗑️ Удаление — удаление данных.
- 🔄 Изменение — редактирование существующих записей.
- 🔍 Просмотр — доступ к формам объекта.
Пример настройки роли для бухгалтера:
| Объект метаданных | Чтение | Добавление | Изменение | Удаление |
|---|---|---|---|---|
Справочник.Контрагенты |
✅ | ✅ | ✅ | ❌ |
Документ.ПоступлениеТоваров |
✅ | ✅ | ❌ | ❌ |
Отчет.ОборотноСальдоваяВедомость |
✅ | ❌ | ❌ | ❌ |
Обратите внимание на права на реквизиты — в 8.2 они настраиваются отдельно. Например, можно разрешить просмотр документа, но скрыть поле СуммаНДС для определенных пользователей. Для этого в редакторе роли перейдите на вкладку Реквизиты и снимите флажки с чувствительных полей.
☑️ Проверка корректности роли
Назначение ролей пользователям
После создания ролей их нужно присвоить пользователям. В 1С 8.2 это делается через список пользователей в конфигураторе:
- Перейдите в
Администрирование → Пользователи. - Выберите пользователя или создайте нового (кнопка
Добавить). - В карточке пользователя на вкладке
Ролиотметьте нужные роли. - Укажите имя для аутентификации (логин) и пароль (если используется файловый вариант работы).
Важные нюансы:
- 🔄 Если пользователь входит в несколько ролей, его права будут суммироваться (т.е. он получит все разрешения из всех ролей).
- 🚫 Роль
Полные правадает неограниченный доступ ко всем объектам — назначайте ее только администраторам. - 🔑 В клиент-серверном варианте работы пароли хранятся на сервере, в файловом — в конфигураторе.
- Открытие объекта (например, справочника
Контрагенты) в конфигураторе. - Переход на вкладку
Права. - Настройка ограничений по полям. Например, для справочника
Контрагентыможно указать:Отбор.Ответственный = &ТекущийПользовательЭто ограничит доступ только теми записями, где в поле
Ответственныйуказан текущий пользователь.
Для упрощения управления большим количеством пользователей можно использовать группы доступа. Например, создать группу Бухгалтерия и назначить ей роль Бухгалтер, а затем добавлять пользователей в эту группу. Однако в 8.2 группы доступа поддерживаются не во всех конфигурациях (например, в "Управлении торговлей" они есть, а в "Бухгалтерии" — нет).
⚠️ Внимание: При изменении ролей пользователя изменения вступают в силу только после повторного входа в систему. Если пользователь уже работает в базе, ему нужно завершить сеанс и зайти заново.
Ограничение прав на уровне записей (RLS)
Механизм Row-Level Security (RLS) в 1С 8.2 позволяет ограничивать доступ не ко всему объекту, а к отдельным записям. Например, менеджер по продажам будет видеть только своих клиентов, а не весь справочник контрагентов. Настройка RLS выполняется через:
Примеры типичных ограничений:
- 📊 По подразделению:
Отбор.Подразделение = &ТекущееПодразделениеПользователя - 👤 По ответственному:
Отбор.Менеджер = &ТекущийПользователь - 🗓️ По дате:
Отбор.Дата >= НачалоМесяца(ТекущаяДата())(доступ только к текущему месяцу)
Важно понимать, что RLS работает только для чтения данных. Если пользователь имеет право на изменение документа, он сможет редактировать все поля, даже если по RLS не видит некоторые записи. Для полной блокировки нужно комбинировать RLS с правами на уровне ролей.
Как проверить работу RLS?
Чтобы убедиться, что ограничения работают корректно, войдите в базу под тестовым пользователем с ограниченными правами. Попробуйте открыть список документов или справочник — должны отображаться только разрешенные записи. Если видно все данные, проверьте синтаксис отбора в конфигураторе и права роли.
Профили групп доступа: альтернатива RLS
Если ваша конфигурация поддерживает профили групп доступа (например, "Управление торговлей"), их можно использовать как упрощенную альтернативу RLS. Профили позволяют:
- 📂 Назначать пользователям доступ к определенным группам справочников (например, только к группе "Поставщики" в справочнике "Контрагенты").
- 📄 Ограничивать доступ к видам документов (например, только к "Заказам покупателей", но не к "Реализациям").
- 👥 Привязывать права к подразделениям из справочника "Подразделения организации".
- Создание профиля в
Администрирование → Профили групп доступа. - Назначение профиля пользователю в его карточке (вкладка
Профили групп доступа). - 🔧 Обновление конфигурации (право
Администрирование). - 📥 Выгрузка/загрузка данных (право
СохранениеВнешнихДанных). - 🖨️ Управление печалью (право
УправлениеПечатью). - 🔄 Обмен данными (право
ОбменДанными). - 🔍 Журнал регистрации (
Администрирование → Журнал регистрации) — здесь фиксируются попытки доступа. - 🛠️ Отладчик в конфигураторе — поможет проверить, какие именно права срабатывают при выполнении операции.
- 📋 Тестовый пользователь — создайте копию проблемного пользователя и тестируйте на ней.
- Был ли пользователь переподключен к базе (права применяются только при новом входе).
- Нет ли конфликтов между ролями (если пользователь входит в несколько ролей, права суммируются).
- Не заблокированы ли объекты на уровне конфигурации (проверьте свойство
Правау объекта в конфигураторе). - В конфигураторе откройте объект (например,
Документ.РеализацияТоваров). - На вкладке
Правадобавьте отбор:Отбор.Подразделение = &ТекущееПодразделениеПользователя. - Убедитесь, что в справочнике
Подразделениязаполнено полеОтветственныйили есть связь с пользователями. - В объекте (например,
Документ.ЗаказПокупателя) настройте RLS-отбор по полюОтветственный: - Убедитесь, что в документе есть реквизит
ОтветственныйтипаСправочникСсылка.Пользователи. - При создании документа автоматически подставляйте текущего пользователя в поле
Ответственный. - Для нужных отчетов (например,
Отчет.ОборотноСальдоваяВедомость) установите только правоЧтение. - Снимите флажки
Добавление,Изменение,Удаление. - Проверьте, что в отчете нет кнопок, требующих дополнительных прав (например, кнопка "Экспорт" может требовать права
СохранениеВнешнихДанных). - 🔄 Кэширование прав: Пользователь должен выйти и заново войти в базу.
- 🔧 Ошибка в RLS: Проверьте синтаксис отборов в конфигураторе (например, опечатки в именах полей).
- 📋 Конфликт ролей: Если пользователь входит в несколько ролей, права суммируются. Проверьте все назначенные роли.
- 🔒 Блокировка на уровне СУБД: В клиент-серверном варианте может потребоваться перезапуск сервера 1С:Предприятия.
- Снять право
Изменениедля проведенных документов в ролях пользователя. - Использовать обработку
ПередЗаписьюв модуле документа, которая будет проверять статус проведения: - Назначить пользователю роль, в которой право
Отмена проведенияотсутствует.
Настройка профилей выполняется в два этапа:
Пример настройки профиля для менеджера отдела продаж:
| Объект | Тип доступа | Ограничение |
|---|---|---|
Справочник.Контрагенты |
Чтение, изменение | Группа "Покупатели" |
Документ.ЗаказПокупателя |
Все права | Подразделение "Отдел продаж" |
Отчет.Продажи |
Только просмотр | Без ограничений |
Профили групп доступа проще в настройке, чем RLS, но менее гибкие. Они не позволяют задавать сложные условия отбора (например, по нескольким полям одновременно) и не работают с произвольными запросами.
Если в вашей конфигурации нет профилей групп доступа, но требуется ограничить доступ по подразделениям, можно создать дополнительный справочник "ПодразделенияПользователей" и использовать его в RLS-отборах.
Права на административные функции
Кроме доступа к данным, в 1С 8.2 важно настроить права на административные функции, такие как:
Эти права настраиваются в ролях на вкладке Прочие права. Например, чтобы разрешить пользователю выгружать данные в Excel, ему нужно дать право СохранениеВнешнихДанных. Без этого права кнопка выгрузки будет неактивна.
Особое внимание уделите праву ИнтерактивноеУдалениеПомеченных — оно позволяет пользователям окончательно удалять помеченные объекты. В бухгалтерских базах это право обычно дают только главному бухгалтеру или администратору.
⚠️ Внимание: Право МонопольныйРежим позволяет пользователю блокировать базу для других пользователей. Назначайте его только тем, кто действительно нуждается в монопольной работе (например, для проведения регламентных операций).
Тестирование и устранение ошибок
После настройки прав обязательно протестируйте их на тестовом пользователе с ограниченными правами. Типичные ошибки и способы их устранения:
| Проблема | Возможная причина | Решение |
|---|---|---|
| Пользователь не видит документ в списке | Не хватает права Чтение на объект или RLS-отбор |
Проверьте роль и настройки RLS в конфигураторе |
| Кнопка "Провести" неактивна | Отсутствует право Проведение на документ |
Добавьте право в роль пользователя |
| Ошибка "Недостаточно прав" при открытии отчета | Нет прав на отчет или на данные, которые он использует | Проверьте права на отчет и на все справочники/документы в его основе |
| Пользователь видит все документы, несмотря на RLS | Ошибка в синтаксисе отбора или права на объект выше RLS | Проверьте код отбора и права роли |
Для диагностики используйте:
Если после изменений права не применяются, проверьте:
Всегда тестируйте права на копии рабочей базы. Ошибки в настройке RLS или ролей могут привести к блокировке доступа ко всей базе, включая администратора!
FAQ: Частые вопросы по настройке прав в 1С 8.2
Как ограничить доступ пользователя только к своему подразделению?
Используйте механизм RLS или профили групп доступа (если поддерживаются):
Альтернативно можно создать роль с правом только на документы своего подразделения, но это потребует ручного назначения прав для каждого подразделения.
Можно ли в 1С 8.2 настроить права так, чтобы пользователь видел только свои документы?
Да, для этого:
Отбор.Ответственный = &ТекущийПользователь
Если поле Ответственный отсутствует, его нужно добавить в конфигураторе.
Как дать пользователю право только на просмотр отчетов, без возможности их изменения?
В ролях пользователя:
Если в отчете есть параметры, которые пользователь не должен менять, настройте права на реквизиты отчета (вкладка Реквизиты в редакторе роли).
Что делать, если после изменения ролей пользователь не видит изменения?
Причины и решения:
Для диагностики используйте Журнал регистрации — в нем фиксируются все попытки доступа с указанием причины отказа.
Как запретить пользователю изменять проведенные документы?
Версия 8.2 не имеет встроенного механизма блокировки проведенных документов, но можно:
Процедура ПередЗаписью(Отказ)
Если Проведен Тогда
Сообщить("Изменение проведенного документа запрещено!");
Отказ = Истина;
КонецЕсли;
КонецПроцедуры
Учтите, что такой код нужно добавлять в конфигурацию, что может потребовать прав на изменение конфигурации.