Контроль доступа в 1С:Предприятие — это основа безопасности бизнес-процессов компании. Неправильно настроенные права могут привести к утечке конфиденциальных данных, ошибкам в учете или даже финансовым потерям. В этой статье разберём, как грамотно распределить полномочия между сотрудниками: от назначения стандартных ролей до создания кастомизированных профилей с ограничением по конкретным документам, справочникам или периодам.
Особенность системы 1С в том, что здесь нет универсального решения: настройки зависят от конфигурации (1С:Бухгалтерия, 1С:ЗУП, 1С:УТ), версии платформы и даже от структуры вашей компании. Мы рассмотрим актуальные механизмы для последних версий платформы 8.3.20+, но учтите: интерфейс административных панелей может незначительно отличаться в разных сборках.
Важно понимать разницу между ролями (шаблонами прав) и пользователями (конкретными аккаунтами). Первые определяют, что можно делать в системе, вторые — кому разрешено эти действия. А еще есть профили групп доступа — они позволяют гибко управлять правами без создания десятков отдельных ролей.
1. Подготовка: кто и зачем должен иметь доступ
Прежде чем открывать окно настроек, ответьте на три ключевых вопроса:
- 🔹 Кто будет работать в системе? (Бухгалтеры, менеджеры по продажам, кадровики, директор)
- 🔹 Какие данные им нужны? (Только свои документы, все документы отдела, вся база)
- 🔹 Какие действия они должны выполнять? (Просмотр, редактирование, удаление, проведение)
Типичная ошибка — давать всем Полные права "на всякий случай". Это как выдать ключи от сейфа каждому сотруднику. В 1С:ЗУП, например, у кадровика не должно быть доступа к зарплатным ведомостям, а у кладовщика — к бухгалтерским проводкам. Используйте принцип минимальных привилегий: открывайте только то, что необходимо для работы.
Если в компании более 20 пользователей, имеет смысл завести группы доступа по отделам. Например:
- 📊 Бухгалтерия — доступ к плану счетов, банковским выпискам, отчетам
- 🛒 Продажи — работа с заказами клиентов, ценами, остатками
- 👔 Кадры — личные карточки сотрудников, приказы о приеме/увольнении
⚠️ Внимание: В конфигурациях 1С:ERP и 1С:КА 2.5 есть встроенный механизмПрофили безопасности. Он позволяет гибко настраивать права по подразделениям, но требует предварительной настройки организационной структуры в справочникеПодразделения. Без этого профили работать не будут!
2. Стандартные роли: что можно использовать "из коробки"
В каждой конфигурации 1С есть набор предопределенных ролей. Их не нужно создавать с нуля — достаточно назначить пользователю. Рассмотрим самые востребованные:
| Роль | Конфигурация | Что разрешает | Ограничения |
|---|---|---|---|
Бухгалтер |
1С:Бухгалтерия, 1С:ERP | Просмотр и редактирование бухгалтерских документов, формирование отчетности | Нет доступа к кадровым данным и зарплатным ведомостям |
Кладовщик |
1С:УТ, 1С:УНФ | Приход/расход товаров, инвентаризация, просмотр остатков | Не может изменять цены или работать с денежными документами |
Менеджер по продажам |
1С:УТ, 1С:КА | Создание заказов клиентов, резервирование товаров, просмотр цен | Нет доступа к финансовым отчетам и настройкам скидок |
Администратор |
Все конфигурации | Полный доступ ко всем данным и настройкам | Только для IT-специалистов или руководителей |
Чтобы назначить стандартную роль:
- Откройте
Администрирование → Пользователи. - Выберите пользователя и нажмите
Изменить. - На вкладке
Ролиотметьте нужные галочками. - Сохраните изменения (
Записать и закрыть).
☑️ Проверка назначения ролей
Если стандартных ролей недостаточно, их можно клонировать и модифицировать. Например, на основе роли Бухгалтер создать Бухгалтер (только просмотр), убрав права на редактирование. Для этого:
- Перейдите в
Администрирование → Настройка прав доступа → Роли. - Выделите базовую роль и нажмите
Копировать. - В новой роли отключите ненужные права на вкладках
ПраваиОграничения.
3. Создание новых ролей: когда и как это делать
Кастомизированные роли нужны в трех случаях:
- 🔧 В компании есть уникальные должности (например, аналитик по закупкам, которому нужны данные из нескольких отделов).
- 🔒 Требуется ограничить доступ к конкретным справочникам (например, только к номенклатуре определенной группы).
- 📅 Нужно разграничить права по периодам (например, доступ только к документам текущего месяца).
Рассмотрим процесс на примере создания роли Менеджер по закупкам (ограниченный), которому разрешено работать только с поставщиками из региона Москва:
- Откройте
Администрирование → Настройка прав доступа → Ролии нажмитеСоздать. - Задайте имя роли (например,
Закупки_Мoskva). - На вкладке
Праваотметьте:- 📄
Документы: Поступление товаров и услуг—Чтение, Добавление, Изменение - 📋
Справочники: Контрагенты— толькоЧтение - 💰
Справочники: Договоры контрагентов—Чтение, Изменение
- 📄
Ограничения добавьте правило для справочника Контрагенты:
Город = "Москва"
Если нужно ограничить доступ по нескольким полям (например, город И тип контрагента), используйте логический оператор И в условии. Для альтернативных условий (город ИЛИ регион) — оператор ИЛИ.
Важно: ограничения в ролях работают только для объектов, поддерживающих RLS (Row-Level Security). В некоторых конфигурациях (например, 1С:Бухгалтерия 3.0) RLS не применяется к регистрам накопления, поэтому для них потребуются дополнительные механизмы контроля.
4. Профили групп доступа: альтернатива ролям
Профили групп доступа (ПГД) — это более гибкий инструмент, чем роли. Они позволяют:
- 🔄 Назначать права динамически (например, по подразделению пользователя).
- 📊 Управлять доступом к отдельным записям (например, только к документам своего отдела).
- 🔄 Автоматически обновлять права при изменении структуры компании.
Чтобы создать профиль:
- Перейдите в
Администрирование → Настройка прав доступа → Профили групп доступа. - Нажмите
Создатьи укажите название (например,Доступ по подразделению). - На вкладке
Правиладобавьте условие, например:Подразделение = ТекущийПользователь.Подразделение - На вкладке
Объектывыберите, к каким данным применяется правило (например, документыЗаказ клиента). - Сохраните профиль и назначьте его пользователям через их карточки.
⚠️ Внимание: Профили групп доступа не заменяют роли, а дополняют их. Если в роли пользователю запрещен просмотр документа, то ПГД не отменит это ограничение. Сначала проверяются права ролей, затем — правила профилей.
Пример использования ПГД: в 1С:ЗУП можно создать профиль, который разрешает кадровикам просматривать личные карточки только сотрудников своего филиала. Для этого в правиле укажите:
ПодразделениеСотрудника = ТекущийПользователь.Подразделение
5. Ограничение по документам и справочникам
Иногда недостаточно назначить роль — нужно точечно запретить доступ к определенным данным. Например:
- 📂 Запретить менеджерам видеть заказы VIP-клиентов.
- 💰 Ограничить бухгалтерам доступ к кассовым документам выше 100 000 ₽.
- 📅 Разрешить просматривать документы только за текущий квартал.
Для этого используйте механизм дополнительных ограничений в ролях. Рассмотрим, как запретить просмотр заказов с суммой больше 50 000 ₽:
- Откройте роль (например,
Менеджер по продажам). - Перейдите на вкладку
Ограничения. - Добавьте новый элемент для объекта
Документ.ЗаказКлиента. - В поле
Условиевведите:СуммаДокумента <= 50000 - Установите флаг
Ограничить чтение.
Для ограничения по периодам используйте конструкции вида:
Дата >= НачалоТекущегоКвартала() И Дата <= КонецТекущегоКвартала()
Как проверить, применяются ли ограничения?
Откройте 1С в режиме Отладка (запуск с ключом /Debug). Создайте тестовый документ, который должен быть скрыт по правилам. В меню Отладка выберите Права доступа → Проверить права на объект и укажите документ. Система покажет, какие роли и ограничения к нему применяются.
Если ограничения не работают:
- 🔍 Проверьте, что роль назначена пользователю (иногда администраторы забывают сохранить изменения).
- 🔄 Обновите кэш метаданных (
Конфигуратор → Администрирование → Тестирование и исправление → Обновить кэш метаданных). - 📋 Убедитесь, что в конфигурации включена поддержка RLS (в старых версиях она могла быть отключена).
6. Типичные ошибки и как их избежать
Даже опытные администраторы 1С иногда допускают ошибки при настройке прав. Вот самые распространенные:
| Ошибка | Последствия | Как исправить |
|---|---|---|
Назначение роли Администратор рядовым пользователям |
Риск изменения конфигурации, удаления данных, утечки информации | Создайте отдельную роль с нужными правами или используйте Полные права только для технических аккаунтов |
| Использование только стандартных ролей без кастомизации | Сотрудники получают избыточные права (например, менеджер видит зарплаты) | Клонируйте стандартные роли и убирайте лишние разрешения |
| Непроверенные ограничения по RLS | Пользователи видят данные, которые не должны видеть (или наоборот) | Тестируйте права на копии базы с реальными данными |
| Отсутствие резервных копий перед изменением прав | При ошибке в настройках можно потерять доступ ко всей базе | Всегда делайте бэкап перед массовыми изменениями ролей |
Еще одна распространенная проблема — конфликт ролей. Если пользователю назначено несколько ролей, система суммирует их права. Например, если одна роль разрешает редактировать документы, а другая — только просматривать, в итоге пользователь сможет редактировать. Чтобы этого избежать:
- 🔧 Используйте иерархию ролей (в некоторых конфигурациях можно задать приоритет).
- 📋 Проверяйте итоговые права через
Администрирование → Права пользователей → Проверить права.
Всегда тестируйте новые роли на тестовом пользователе, а не на реальных сотрудниках. Для этого создайте в базе фиктивного пользователя (например, Test_Role) и проверяйте права под его аккаунтом.
7. Аудит и мониторинг прав доступа
Настройка прав — это не разовое действие, а постоянный процесс. Регулярно проводите аудит:
- 🔍 Раз в квартал проверяйте актуальность назначенных ролей (особенно после увольнений или переводов сотрудников).
- 📊 Ведите журнал изменений прав (можно в отдельном документе 1С или в Excel).
- 🔄 Используйте отчет
Анализ прав пользователей(Администрирование → Отчеты по администрированию).
Для мониторинга активности пользователей настройте:
- Журнал регистрации (
Администрирование → Журнал регистрации):- 📌 Включите запись событий
Начало работы пользователяиОшибка доступа. - 📌 Настройте автоматическую очистку старых записей (например, старше 3 месяцев).
- 📌 Включите запись событий
Если Пользователь.Роль <> "Администратор" И Действие = "Удаление документа"
Тогда ОтправитьУведомление("admin@company.ru", "Удален документ " + Документ.Наименование)
В 1С:ERP и 1С:КА 2.5 есть встроенный механизм Контроль целесообразности. Он позволяет отслеживать:
- 💰 Изменения в денежных документах.
- 📦 Корректировки остатков товаров.
- 📝 Редактирование критичных справочников (например,
Номенклатура).
⚠️ Внимание: В облачных версиях 1С (например, 1С:Fresh) некоторые инструменты аудита могут быть ограничены. Уточняйте возможности в личном кабинете или у провайдера.
8. Автоматизация управления правами
Если в компании более 50 пользователей, ручная настройка прав становится неэффективной. В этом случае помогут:
- 🤖 Скрипты для массового назначения ролей (например, через
Загрузка данных из Excel). - 🔄 Интеграция с Active Directory (для синхронизации пользователей и групп).
- 📊 Специализированные обработки (например, "Управление правами пользователей" от фирмы 1С).
Пример скрипта для массового назначения роли Менеджер всем пользователям из отдела Продажи:
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ Пользователи.Ссылка КАК Пользователь
ИЗ Справочник.Пользователи КАК Пользователи
ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.Подразделения КАК Подразделения
ПО Пользователи.Подразделение = Подразделения.Ссылка
ГДЕ Подразделения.Наименование = &Отдел";
Запрос.УстановитьПараметр("Отдел", "Продажи");
Результат = Запрос.Выполнить();
Пока Результат.Следующий() Цикл
Пользователь = Результат.Пользователь.ПолучитьОбъект();
Роль = Справочники.Роли.НайтиПоНаименованию("Менеджер");
Если НЕ Пользователь.Роли.Найти(Роль) Тогда
Пользователь.Роли.Добавить(Роль);
Пользователь.Записать();
КонецЕсли;
КонецЦикла;
Для интеграции с Active Directory используйте обработку ОбменДаннымиСLDAP.epf (поставляется с дистрибутивом 1С). Она позволяет:
- 🔄 Автоматически создавать пользователей в 1С при добавлении их в AD.
- 📋 Синхронизировать подразделения и должности.
- 🔑 Назначать роли на основе групп безопасности Windows.
Перед массовыми изменениями прав всегда делайте резервную копию базы! Для этого в конфигураторе выполните Администрирование → Выгрузить информационную базу.
FAQ: Частые вопросы по настройке прав в 1С
Как дать пользователю доступ только к своим документам?
Используйте механизм RLS (Row-Level Security) в ролях. Для этого:
- Откройте роль пользователя.
- На вкладке
Ограничениядобавьте правило для нужного документа. - В условии укажите
Автор = ТекущийПользователь()илиОтветственный = ТекущийПользователь().
Для 1С:ЗУП подойдет условие Сотрудник.Подразделение = ТекущийПользователь.Подразделение.
Почему пользователь не видит документ, несмотря на права?
Проверьте:
- Назначена ли роль пользователю (иногда администраторы забывают сохранить изменения).
- Нет ли конфликтующих ограничений в других ролях (система суммирует запреты).
- Включена ли поддержка RLS для этого типа документов (в некоторых конфигурациях она отключена).
- Не установлен ли дополнительный пароль на документ (
Действия → Установить пароль).
Если проблема остается, проверьте права через Администрирование → Права пользователей → Проверить права на объект.
Можно ли ограничить доступ по времени (например, только с 9 до 18)?
Да, но не через стандартные механизмы 1С. Варианты:
- 🔒 Использовать внешние средства аутентификации (например, Windows AD с ограничением по времени входа).
- 📅 Написать обработку-планировщик, которая будет блокировать/разблокировать пользователей по расписанию.
- 🔄 В облачных версиях (например, 1С:Fresh) некоторые провайдеры предлагают тарифы с ограничением по времени доступа.
В стандартной 1С:Предприятие 8.3 такой функции нет.
Как запретить редактирование проведенных документов?
Есть два способа:
- Через роль:
- Откройте роль пользователя.
- На вкладке
Праванайдите нужный документ (например,Реализация товаров и услуг). - Снимите галочку
Изменениедля проведенных документов.
- В конфигураторе откройте свойства документа.
- На вкладке
Праваустановите флагЗапретить изменение проведенных.
Второй способ более надежен, так как действует на всех пользователей.
Как перенести права пользователей при переходе на новую версию 1С?
При обновлении конфигурации права пользователей сохраняются, но:
- 🔄 Стандартные роли могут изменить свой состав (проверьте их после обновления).
- 📋 Кастомизированные роли переносятся, но их нужно протестировать.
- 🔧 Если обновление сопровождалось изменением структуры метаданных, некоторые ограничения могут перестать работать.
Рекомендации:
- Перед обновлением сделайте выгрузку списка пользователей и их ролей (отчет
Пользователи и их права). - После обновления сравните права с эталонной базой.
- Протестируйте критичные операции под аккаунтами ключевых пользователей.