Как настроить ограничение доступа на уровне записей в 1С
Содержание
РЛС в 1С — это ограничение доступа на уровне записей (Record Level Security). Включается в разделе Администрирование → Настройки пользователей и прав, флажком «Ограничивать доступ на уровне записей». После этого каждый сотрудник видит не все данные подряд, а только документы и справочники тех организаций, складов и контрагентов, которые разрешены его группе доступа.
Настройка РЛС в 1С сводится к трём шагам: включить сам механизм, назначить пользователям профили (набор ролей) и указать для каждой группы доступа разрешённые значения. Ниже — как это сделать в типовых конфигурациях на платформе 8.3 (БП 3.0, ЗУП 3.1, УТ 11, КА, ERP) и что учесть, чтобы база потом не «встала».
Речь идёт именно о разграничении доступа к данным, а не о журнале событий. РЛС не записывает логи и не хранит историю действий — для этого служит журнал регистрации, это отдельный механизм.
Что даёт ограничение на уровне записей и когда оно нужно
Обычные права в 1С задаются ролями. Роль отвечает на вопрос «можно ли вообще открывать этот документ». Если у менеджера есть роль на работу с реализациями, он видит реализации всех организаций и складов базы.
РЛС добавляет второй уровень: доступ к конкретным записям по их реквизитам. С ней тот же менеджер видит только реализации своего склада, а бухгалтер филиала — только документы своей организации.
Когда ограничение действительно требуется:
- 🏢 в базе несколько организаций, и сотрудники одной не должны видеть данные другой;
- 🏭 склады или подразделения ведут разные люди, и нужно изолировать их документы;
- 🤝 менеджеры работают только со своими контрагентами или своей группой партнёров;
- 👤 кадровик или расчётчик обслуживает лишь часть сотрудников (в ЗУП).
А вот когда РЛС скорее мешает: одна организация, один склад, десяток сотрудников с общим доступом. Тогда ограничение на уровне записей только нагружает базу, не давая пользы — включать его в такой ситуации не нужно.
Что проверить перед включением РЛС
Ограничение на уровне записей перестраивает то, как платформа отбирает данные в каждом запросе. На рабочей базе это заметная операция, поэтому к ней стоит подготовиться.
Главное — заранее определить виды доступа, то есть разрезы, по которым режем данные. Каждый включённый вид добавляет условия в запросы, поэтому берём только то, что реально нужно. Ограничение по организациям и складам — почти всегда оправдано, по мелким справочникам — чаще нет.
Если у объектов не заполнен реквизит, по которому ограничиваем (например, у части номенклатуры не указан склад), после включения РЛС эти записи могут пропасть из виду у всех. Сначала наведите порядок в данных, потом включайте ограничение.
Как включить ограничение доступа на уровне записей
Механизм включается одним флажком, но действует он сразу на всю базу.
- Зайдите под пользователем с полными правами.
- Откройте
Администрирование → Настройки пользователей и прав. - Найдите группу настроек
Группы доступа. - Установите флажок «Ограничивать доступ на уровне записей».
- Дождитесь, пока программа пересчитает наборы доступа — на большой базе это занимает несколько минут.
После включения права начинают учитывать не только роли, но и разрешённые значения из групп доступа. Пользователям, которые были в программе, нужно перезайти, чтобы новые ограничения применились.
Снятие и повторная установка этого флажка на рабочей базе запускает перестроение прав для всех пользователей. Делайте это в нерабочее время: пока идёт пересчёт, работа в программе замедляется.
Путь к настройке одинаков в типовых конфигурациях на БСП:
| Конфигурация | Где включается РЛС |
|---|---|
| Бухгалтерия 3.0 | Администрирование → Настройки пользователей и прав → Группы доступа |
| ЗУП 3.1 | Администрирование → Настройки пользователей и прав → Группы доступа |
| Управление торговлей 11 | НСИ и администрирование → Настройки пользователей и прав → Группы доступа |
| ERP, Комплексная автоматизация | НСИ и администрирование → Настройки пользователей и прав → Группы доступа |
Название верхнего раздела у торговых конфигураций — НСИ и администрирование, у бухгалтерских — Администрирование. Дальше всё совпадает.
Профили групп доступа: из чего собирается набор прав
Чтобы понять настройку, держите в голове три объекта, которые работают в связке.
- Профиль групп доступа — это набор ролей плюс перечень видов доступа, которыми профиль умеет пользоваться. Профиль отвечает на вопрос «что сотрудник может делать». Есть предопределённые профили (Администратор, Бухгалтер, Кладовщик и т. п.) и можно создавать свои.
- Группа доступа — связывает профиль с конкретными людьми и конкретными разрешёнными значениями. Отвечает на вопрос «кто и в каких границах».
- Виды доступа — те самые разрезы (организации, склады, партнёры), по которым идёт ограничение.
Проще говоря: профиль задаёт полномочия, группа доступа — рамки, в которых эти полномочия действуют.
Профили лежат по ссылке Профили групп доступа в том же разделе настроек. Предопределённые профили менять нельзя — если нужны свои роли, скопируйте профиль командой создания по образцу и правьте копию.
Не плодите профили без нужды. Чаще удобнее один профиль «Менеджер» и несколько групп доступа с разными разрешёнными складами, чем десяток почти одинаковых профилей.
Группы доступа и виды доступа: задаём разрешённые значения
Сама «нарезка» данных настраивается в группах доступа.
- Откройте
Группы доступав разделе настроек пользователей и прав. - Создайте группу или откройте существующую.
- В поле профиля выберите нужный профиль — он определит доступные виды доступа.
- На закладке участников добавьте пользователей или группы пользователей.
- Для каждого вида доступа укажите разрешённые значения.
Разрешённые значения можно задать двумя способами:
- перечислением — явный список: эти три организации, эти два склада;
- вариантом «Все, кроме» — разрешено всё, перечислены только исключения.
Второй вариант удобен, когда новые элементы должны автоматически становиться доступными. Если задать список перечислением, каждую новую организацию или склад придётся добавлять в группы вручную — иначе их никто не увидит.
Какие виды доступа встречаются чаще всего:
- 🏢 Организации — базовый разрез в многофирменной базе, есть почти везде;
- 🏭 Склады — для торговых конфигураций (УТ, ERP, КА);
- 🤝 Партнёры и контрагенты — чтобы менеджер вёл только своих;
- 👥 Группы пользователей — доступ к учётным записям и их настройкам;
- 👤 Физические лица — в ЗУП, чтобы расчётчик видел часть сотрудников.
Набор видов доступа зависит от конфигурации: что умеет профиль, то и будет в группе. Выдумывать новые разрезы в режиме 1С:Предприятия нельзя — они приходят из конфигурации.
Пример для торговой базы: профиль «Менеджер по продажам» даёт роли на работу с заказами и реализациями. Группа доступа «Менеджеры Москвы» использует этот профиль, в участниках — трое сотрудников, в разрешённых значениях вида доступа «Склады» — только московский склад. В результате эти трое работают с заказами, но видят лишь свой склад.
Когда сотрудников много, не добавляйте их в группу по одному. Соберите их в группу пользователей и укажите в участниках группу целиком — новый сотрудник, попав в группу пользователей, автоматически получит те же ограничения. Так же работают и группы значений: вместо перечисления двадцати складов удобнее один раз собрать их в группу складов и разрешить группу.
Права нескольких групп доступа складываются по максимуму. Если один пользователь входит в две группы с разными разрешёнными значениями, он увидит объединение. Это частый источник «он видит лишнее».
Как проверить, что доступ ограничен правильно
После настройки обязательно убедитесь, что всё работает как задумано, а не «вроде включили».
- 🔍 Откройте список пользователей (
Пользователив том же разделе) — у каждого видно, в какие группы доступа он входит. - 👁 Проверьте под реальным пользователем: зайдите в программу под его учётной записью (или попросите его) и откройте список документов — там должны остаться только разрешённые организации и склады.
- 📊 В типовых конфигурациях есть отчёт по правам доступа — он показывает, какие роли и ограничения действуют у выбранного пользователя. Ищите его среди сервисных отчётов раздела администрирования.
Если под пользователем список пуст, а должен быть заполнен — почти всегда дело в том, что для его группы доступа не заданы разрешённые значения либо не заполнен реквизит у самих документов.
РЛС и производительность: почему база начинает тормозить
Это оборотная сторона механизма, о которой забывают чаще всего. Ограничение на уровне записей платформа реализует так: к каждому запросу к ограниченным данным добавляются условия отбора по разрешённым значениям. Чем больше видов доступа и чем длиннее списки значений — тем тяжелее запросы.
Что замедляет работу сильнее всего:
- много включённых видов доступа «на всякий случай»;
- разрешённые значения, заданные длинным перечислением (сотни элементов) вместо групп;
- ограничение по часто используемым справочникам, а не по организации и складу.
Как снизить нагрузку:
- оставьте только те виды доступа, которые действительно нужны;
- вместо перечисления сотен элементов используйте группы значений или вариант «Все, кроме»;
- на клиент-серверной базе следите за регламентными операциями обслуживания — актуальная статистика и индексы для РЛС критичны;
- на крупной базе имеет смысл замерить скорость типовых операций до и после включения, чтобы понимать цену ограничения.
Тонкую логику ограничений (например, доступ по сложному условию, которого нет в типовых видах доступа) задают уже в Конфигураторе — на закладке «Ограничения доступа к данным» у ролей. Это работа для специалиста по конфигурированию, а не администратора; в типовых задачах хватает настроек в режиме 1С:Предприятия.
Типичные ошибки при настройке РЛС
Разбор по принципу «симптом → причина»: что увидите и из-за чего это происходит.