Контроль доступа к данным в 1С:Управление нашей фирмой (УНФ) — критически важная задача для безопасности бизнеса. Неправильно настроенные права могут привести к утечке конфиденциальной информации, ошибкам в учете или даже финансовым потерям. Эта статья поможет разобраться, как гибко настроить роли пользователей, ограничить доступ к чувствительным разделам и избежать типичных ошибок при администрировании прав в 1С УНФ.
В отличие от бухгалтерских конфигураций, где права часто привязаны к стандартным ролям, УНФ требует более тонкой настройки из-за разнообразия бизнес-процессов: от управления заказами до работы с клиентской базой. Мы рассмотрим не только базовые настройки через интерфейс программы, но и продвинутые сценарии с использованием Конфигуратора для опытных администраторов.
Особое внимание уделим правам на уровне записей (RLS), которые позволяют ограничивать доступ не только к разделам программы, но и к конкретным документам или справочникам. Это актуально для компаний с территориально распределенными подразделениями или сложной организационной структурой.
Почему стандартные роли в 1С УНФ не всегда подходят
Многие администраторы ошибочно полагают, что достаточно назначить пользователю одну из предопределенных ролей — Администратор, Бухгалтер или Менеджер по продажам — и проблема решена. На практике это приводит к двум ключевым проблемам:
- 🔓 Избыточные права: Например, роль
Менеджер по продажампо умолчанию позволяет просматривать все заказы клиентов, включая чужие регионы или закрытые сделки. - 🚫 Недостаточная гранулярность: Нет возможности запретить редактирование цен в заказах, сохраняя при этом доступ к их просмотру.
- 📊 Отсутствие контроля за отчетами: Пользователи получают доступ ко всем аналитическим отчетам, даже если им нужна только часть данных.
В 1С УНФ реализована гибкая система прав, но она требует ручной настройки. Например, вы можете создать роль Менеджер по работе с VIP-клиентами, которая будет разрешать:
- 👤 Просмотр только карточек клиентов с пометкой "VIP"
- 📝 Редактирование заказов для этих клиентов
- 📈 Просмотр истории взаимодействий, но без права удаления записей
Для сравнения, в таблице ниже показаны различия между стандартными и кастомизированными ролями:
| Стандартная роль | Проблемы | Решение через кастомизацию |
|---|---|---|
Кассир |
Видит все платежные документы, включая чужие кассы | Ограничение по подразделениям или кассовым аппаратам |
Кладовщик |
Может редактировать остатки на всех складах | Права только на свой склад с запретом корректировки |
Руководитель |
Имеет доступ к зарплатным данным всех сотрудников | Ограничение по подразделениям или проектам |
⚠️ Внимание: В версиях 1С УНФ ниже 3.0.120 механизм RLS (Row-Level Security) работает нестабильно с некоторыми отчетами. Перед настройкой проверьте актуальную версию платформы в Справка → О программе.
Подготовка к настройке прав: проверка текущих ролей
Прежде чем создавать новые роли или редактировать существующие, необходимо проанализировать текущую структуру прав. Это поможет избежать дублирования ролей и конфликтов разрешений.
Для начала откройте список пользователей и их ролей:
- Перейдите в
Администрирование → Пользователи - Выберите пользователя и нажмите
Изменить - На вкладке
Прававы увидите назначенные роли
Обратите внимание на следующие моменты:
- 🔍 Дублирующиеся роли: Например, если пользователю назначены и
Менеджер по продажам, иМенеджер по заказам, возможно, их можно объединить в одну кастомизированную роль. - 🛡️ Конфликтующие разрешения: Роль
Администраторможет перекрывать ограничения других ролей. - 📅 Устаревшие роли: Проверьте, не остались ли права от уволенных сотрудников или старых бизнес-процессов.
Для глубокого анализа используйте отчет Права пользователей (Администрирование → Отчеты по администрированию). Он покажет:
- Список всех ролей в системе
- Пользователей, которым назначена каждая роль
- Объекты метаданных (документы, справочники), к которым роль предоставляет доступ
Создайте тестового пользователя с минимальными правами перед массовыми изменениями. Это поможет проверить новые настройки без риска для рабочих процессов.
Создание и настройка новых ролей в 1С УНФ
Если стандартные роли не покрывают ваши потребности, придется создать собственные. Это можно сделать как через интерфейс 1С:Предприятие, так и в Конфигураторе (для опытных пользователей).
Способ 1: Через интерфейс программы (для начинающих)
Самый безопасный метод, не требующий знаний программирования:
- Перейдите в
Администрирование → Настройка прав доступа → Роли - Нажмите
Создатьи введите название новой роли (например,Менеджер по VIP-клиентам) - На вкладке
Праваотметьте галочками нужные разрешения:- 📋 Справочники: Выберите
Клиентыи установите права на чтение/редактирование - 📄 Документы: Разрешите работу с
Заказами клиентовиСчетами - 📊 Отчеты: Ограничьте доступ только к отчетам по продажам
- 📋 Справочники: Выберите
Ограничения настройте RLS (если нужно ограничить доступ по организациям, складам или другим критериям)Способ 2: Через Конфигуратор (для опытных)
Этот метод дает больше возможностей, но требует осторожности:
- Откройте базу в
Конфигураторе(файл1CV8.1CD) - Перейдите в ветку
Общие → Роли - Создайте новую роль или скопируйте существующую (правая кнопка →
Копировать) - В окне редактирования роли детально настройте права для каждого объекта метаданных
- Для RLS используйте вкладку
Ограничения доступа к данным
Пример настройки RLS для ограничения доступа менеджера только к своим клиентам:
Ограничение по полю "Менеджер" в справочнике "Клиенты":
Тип сравнения: Равно
Значение: ТекущийПользователь()
⚠️ Внимание: Изменения вКонфигураторемогут привести к ошибкам при обновлении программы. Всегда делайте резервную копию базы перед редактированием (Администрирование → Выгрузить информационную базу).
Указано понятное название роли|
Права не дублируют существующие роли|
Настроены ограничения RLS (если нужны)|
Проверено поведение роли на тестовом пользователе-->
Настройка прав на уровне записей (RLS)
Механизм Row-Level Security (RLS) в 1С УНФ позволяет ограничивать доступ не к целым справочникам или документам, а к отдельным записям. Это незаменимо для:
- 🏢 Компаний с филиалами (доступ только к данным своего подразделения)
- 👥 Менеджеров, работающих с определенными группами клиентов
- 📦 Складов (кладовщик видит только свой склад)
- Откройте роль в
Конфигураторе(или через интерфейс, если используете упрощенный режим) - Перейдите на вкладку
Ограничения доступа к данным - Добавьте новое ограничение для справочника
Клиенты - Установите условие:
Менеджер = &ТекущийПользователь - Сохраните роль и назначьте ее пользователям
Рассмотрим настройку RLS на примере ограничения доступа менеджеров к клиентам:
Для более сложных сценариев можно использовать выражения на встроенном языке. Например, ограничение по региону продаж:
Регион В (&РегионыПользователя, Клиент.Регион)
где &РегионыПользователя - список регионов из справочника, привязанного к пользователю
Важный нюанс: RLS работает только для чтения данных. Если пользователь пытается сохранить документ с ссылкой на запрещенную запись (например, заказ для чужого клиента), система выдаст ошибку. Чтобы избежать этого, настройте предопределенные отборы в формах ввода.
| Объект | Пример условия RLS | Когда применять |
|---|---|---|
| Справочник "Номенклатура" | ГруппаТоваров В (&РазрешенныеГруппы) |
Ограничение ассортимента для менеджеров |
| Документ "Заказ клиента" | Организация = &ОрганизацияПользователя |
Мультиорганизационный учет |
| Справочник "Контрагенты" | ВидКонтрагента = Перечисление.ВидыКонтрагентов.Поставщик |
Разделение доступа к поставщикам и покупателям |
Что делать если RLS не работает?
Если после настройки RLS пользователи продолжают видеть запрещенные данные, проверьте:
1. Кэш метаданных: Обновите кэш через Конфигуратор → Администрирование → Тестирование и исправление → Обновить конфигурацию базы данных
2. Конфликтующие роли: У пользователя может быть другая роль с более широкими правами
3. Права на объект: Убедитесь, что на вкладке Права для объекта установлено хотя бы чтение
4. Версию платформы: В старых версиях (ниже 8.3.18) RLS работает некорректно с некоторыми отчетами
Права на отчеты и аналитику: как ограничить доступ к данным
Отчеты в 1С УНФ часто содержат конфиденциальную информацию: обороты по клиентам, маржинальность продаж, зарплатные данные. По умолчанию многие роли имеют доступ ко всем отчетам, что создает риски.
Для настройки прав на отчеты:
- Откройте роль в редактировании
- Перейдите на вкладку
Праваи найдите разделОтчеты - Для каждого отчета установите нужный уровень доступа:
- 📊
Чтение— просмотр отчета - ⚙️
Выполнение— возможность запуска отчета - 📥
Выгрузка— разрешение на экспорт данных
- 📊
Отбор (доступен в некоторых стандартных отчетах)Пример: чтобы менеджер по продажам видел в отчете Продажи по клиентам только своих клиентов:
- Откройте отчет
Продажи по клиентам - Нажмите
Настройки → Отбор - Добавьте условие:
Менеджер = &ТекущийПользователь - Сохраните настройку как пользовательскую и назначьте ее роли
Важно: В отчетах с динамическим формированием данных (например, Анализ продаж) стандартные отборы могут не сработать. В этом случае потребуется модификация отчета в Конфигураторе или создание отдельного варианта отчета с жестко прописанными ограничениями.
⚠️ Внимание: Некоторые отчеты в 1С УНФ (например, Финансовый результат) используют данные из регистров накопления, где RLS работает иначе, чем в справочниках. Для них может потребоваться настройка прав на уровне регистров.
Типичные ошибки при настройке прав и как их избежать
Даже опытные администраторы допускают ошибки при работе с правами в 1С УНФ. Вот наиболее распространенные из них и способы их предотвращения:
- 🔄 Циклические ссылки в ролях: Когда роль А включает роль Б, а роль Б включает роль А. Это приводит к неожиданному расширению прав.
Решение: Используйте иерархию ролей без зацикливания. Проверяйте включения на вкладке
Подчиненные роли. - 📛 Избыточные права для администраторов: Назначение полных прав (
Администрирование) пользователям, которым нужны только отдельные административные функции.Решение: Создайте роль
Ограниченный администраторс правами только на нужные разделы (Пользователи,Резервное копирование). - 🔍 Игнорирование прав на реквизиты: Пользователь может редактировать документ, но не видеть отдельные поля (например, цены закупа).
Решение: Настройте права на уровне реквизитов в
Конфигураторе(вкладкаРеквизитыв свойствах объекта). - 📅 Забытые временные права: Предоставление расширенных прав "на время" без последующего отзыва.
Решение: Ведите журнал временных прав в отдельном документе или используйте механизм
Действительно с/пов настройках ролей (доступно в последних версиях). - Включите регистрацию событий (
Администрирование → Журнал регистрации → Настройка) - Отметьте события
Ошибка доступаиПроверка прав - Воспроизведите проблему и проанализируйте записи журнала
Для диагностики проблем с правами используйте журнал регистрации:
Типичная ошибка в журнале, указывающая на проблему с RLS:
Ошибка при выполнении запроса к базе данных:
Недостаточно прав для чтения данных (Справочник.Клиенты)
Всегда тестируйте новые настройки прав на копии рабочей базы. Даже незначительные ошибки в RLS могут сделать данные недоступными для легитимных пользователей.
Автоматизация управления правами: группы пользователей и шаблоны
В крупных компаниях ручное назначение ролей каждому пользователю становится неэффективным. 1С УНФ поддерживает механизмы автоматизации:
- 👥 Группы пользователей: Объединение пользователей по должности или подразделению для массового назначения ролей
- 📑 Шаблоны ролей: Заготовки для быстрого создания похожих ролей
- 🤖 Автоматическое назначение: Привязка ролей к должностям из справочника
Физические лица - Создайте группу в
Администрирование → Группы пользователей - Добавьте в группу пользователей (например, всех менеджеров отдела продаж)
- Назначьте группе нужные роли
- Новых сотрудников добавляйте в группу — они автоматически получат все роли
- Откройте справочник
Должности(НСИ → Кадры → Должности) - Для каждой должности укажите стандартный набор ролей на вкладке
Права - При приеме нового сотрудника укажите его должность — роли назначатся автоматически
- ⚡ Экономия времени: Не нужно настраивать каждого пользователя отдельно
- 🔄 Легкое обновление: Изменили роль в шаблоне — права обновляются у всех пользователей группы
- 📈 Масштабируемость: Удобно управлять правами в растущей компании
- В
Конфигуратореоткройте объектДокумент.ЗаказКлиента - На вкладке
Правадля вашей роли установитеЧтение = Разрешить,Добавление/Изменение/Удаление = Запретить - Для реквизита
Ценана вкладкеРеквизитыустановитеРедактирование = Запретить - На вкладке
Ограниченияроли — возможно, установлен RLS по организации, складу или менеджеру - У пользователя может быть другая роль с более строгими ограничениями (перекрывает текущие права)
- В
Журнале регистрации(Администрирование → Журнал регистрации) найдите записи об ошибках доступа - Убедитесь, что документ не помечен как
УдаленныйилиЗаблокированный - В
Конфигуратореоткройте роль и перейдите на вкладкуОграничения доступа к данным - Для документа
ЗаказКлиентадобавьте условие: - Тип ограничения:
Дата >= &НачалоПериода - Значение параметра
&НачалоПериодазадайте какНачалоГода(ТекущаяДата()) - 365(ограничение на 1 год) - На вкладке
Праванайдите разделОтчеты - Для нужных отчетов установите:
Чтение = РазрешитьВыполнение = Разрешить(если отчет формируется по запросу)Изменение = ЗапретитьУдаление = Запретить
- На вкладке
ДополнительнозапретитеЭкспорт данных, если нужно ограничить выгрузку - Сравните текущие роли с шаблонами из новой версии (
Конфигуратор → Конфигурация → Сравнить конфигурации) - Обновите конфигурацию базы данных (
Администрирование → Тестирование и исправление → Обновить конфигурацию БД) - Проверьте, не сбросились ли настройки RLS — иногда обновление сбрасывает сложные условия
- Если права пропали у стандартных ролей, восстановите их из шаблона (
Конфигуратор → Общие → Роли → Восстановить из шаблона)
Пример настройки группы пользователей:
Для автоматизации по должностям:
Преимущества такого подхода:
⚠️ Внимание: При использовании автоматического назначения ролей по должностям убедитесь, что в справочнике Должности нет дублей с разными наборами прав. Это может привести к конфликтам при назначении.
FAQ: Частые вопросы по настройке прав в 1С УНФ
Как запретить пользователю редактировать цены в заказах, но разрешить просмотр?
Создайте новую роль на основе Менеджер по продажам, затем:
Если нужно разрешить редактирование других полей (например, количества), настройте права отдельно для каждого реквизита.
Почему пользователь не видит документ, хотя роль это позволяет?
Проверьте последовательно:
Если проблема остается, проверьте права на связанные объекты (например, для заказа клиента нужны права на справочник Клиенты и Номенклатура).
Можно ли ограничить доступ к старым документам (например, старше 1 года)?
Да, это можно сделать через RLS с использованием даты:
Для гибкости можно создать справочник ПериодыДоступа и привязать его к пользователям.
Как дать пользователю права только на просмотр отчетов без возможности их изменять?
В настройках роли:
Для отчетов с настройками (например, Анализ продаж) также запретите изменение параметров на вкладке Настройки.
Что делать, если после обновления 1С УНФ пропали некоторые права?
Это типичная проблема при обновлении конфигурации. Действуйте по алгоритму:
После обновления всегда тестируйте критические сценарии (создание документов, формирование отчетов) на тестовой базе.