Права доступа в 1С 8.3: роли, профили, RLS и проверка
Содержание
В типовых конфигурациях 1С 8.3 права пользователя настраивают не в конфигураторе, а в самой программе: Администрирование → Настройки пользователей и прав (в УТ 11 — НСИ и администрирование → Настройки пользователей и прав). Пользователя включают в группу доступа, а набор разрешений группе задаёт профиль. Роли напрямую там почти никогда не назначают.
Конфигуратор нужен, когда база нетиповая, когда надо создать свою роль или ограничить доступ на уровне записей кодом. Ниже — оба пути: от простой настройки бухгалтеру до RLS и аудита того, кто что может.
Как устроены права доступа в 1С 8.3
У платформы один кирпичик — роль. Это объект конфигурации, в котором для каждого справочника, документа, регистра и отчёта отмечены разрешённые действия: чтение, добавление, изменение, удаление, проведение и так далее. Пользователю может быть назначено несколько ролей, права складываются.
Типовые конфигурации (БП 3.0, ЗУП 3.1, УТ 11, КА, ERP) построены на Библиотеке стандартных подсистем (БСП). Она добавляет поверх ролей три уровня:
- 👤 Пользователь — элемент справочника «Пользователи», связанный с пользователем информационной базы.
- 📦 Профиль группы доступа — набор ролей под должность: «Бухгалтер», «Главный бухгалтер», «Администратор» и другие.
- 👥 Группа доступа — профиль плюс список участников плюс, при необходимости, ограничения по организациям, складам и другим видам доступа.
| Уровень | Где живёт | Кто правит |
|---|---|---|
| Роль | Конфигуратор, ветка Общие → Роли | Программист |
| Профиль | Режим «Предприятие» | Администратор |
| Группа доступа | Режим «Предприятие» | Администратор |
| Пользователь | Режим «Предприятие» (в типовых) или конфигуратор (в нетиповых) | Администратор |
Отдельно стоят две служебные роли: «Полные права» и «Администратор системы». У кого они есть, тот видит всё и может менять пользователей. Пока в базе нет ни одного пользователя, в неё входит кто угодно без пароля. Как только создан первый пользователь, платформа требует, чтобы хотя бы у одного были административные права.
Как настроить права пользователя в типовой конфигурации
Порядок одинаковый для Бухгалтерии, ЗУП и Управления торговлей. Разница только в разделе верхнего уровня.
| Конфигурация | Путь |
|---|---|
| Бухгалтерия предприятия 3.0 | Администрирование → Настройки пользователей и прав |
| ЗУП 3.1 | Администрирование → Настройки пользователей и прав |
| Управление торговлей 11 | НСИ и администрирование → Настройки пользователей и прав |
Шаг 1. Создайте пользователя
- Откройте
Настройки пользователей и прав → Пользователии нажмитеСоздать. - Заполните полное имя. Имя для входа подставится само, его можно сократить:
ivanovaвместо «Иванова Мария Петровна». - Отметьте флажок «Вход в программу разрешён».
- Выберите способ входа: аутентификация 1С (логин и пароль) или аутентификация операционной системы (вход под учётной записью Windows без пароля).
- Нажмите «Установить пароль » и задайте временный пароль. Пользователь сменит его при первом входе, если включить требование смены.
- Запишите карточку.
Шаг 2. Дайте права через группы доступа
- В карточке пользователя нажмите
Права доступа. - Откроется список групп доступа. Отметьте флажками нужные, например «Бухгалтеры».
- Запишите. Готово: права пришли вместе с профилем группы.
Второй вариант — зайти в Группы доступа, открыть группу и добавить пользователя
в табличную часть участников. Результат тот же.
Если сотрудников много, заведите группы пользователей («Бухгалтерия», «Склад») и включайте в группу доступа целиком группу пользователей. Новый бухгалтер попадёт в группу «Бухгалтерия» — и сразу получит все её права.
Шаг 3. Проверьте вход
Зайдите под новым пользователем в отдельном сеансе. Изменения ролей вступают в силу при следующем входе: если сотрудник уже сидит в программе, ему нужно перезапустить её.
Профили групп доступа: свой набор ролей под должность
В типовых конфигурациях есть поставляемые профили. Их состав ролей менять нельзя: при обновлении фирма 1С перезаписывает его. Если профиль почти подходит, его копируют.
- Откройте
Настройки пользователей и прав → Профили групп доступа. - Выделите похожий профиль, например «Бухгалтер», и скопируйте его.
- Назовите копию по должности: «Бухгалтер по зарплате без кассы».
- На вкладке ролей снимите лишнее и добавьте нужное.
- Запишите профиль и создайте на его основе группу доступа.
Как подбирать роли:
- ✅ Начинайте с минимума и добавляйте по жалобам. Лишнее право потом никто не заметит, а ошибку в данных заметят.
- ✅ Роли с «Чтением» и с «Изменением» часто идут парами. Для просмотра достаточно первой.
- ✅ Отдельная роль на печать, выгрузку и отправку отчётности — не давайте её тем, кто только вводит первичку.
- ❌ Не включайте «Полные права» в рабочие профили. Это ключ от всего, включая пользователей и обработки.
Профиль «Администратор» не трогайте. Если у вас не останется ни одного пользователя с ним, управлять правами придётся через конфигуратор.
Пользователи и роли в конфигураторе
Конфигуратор нужен в трёх случаях: база нетиповая и без БСП, нужна новая роль или требуется аварийно восстановить администратора.
Создание пользователя
- Откройте конфигуратор и выберите
Администрирование → Пользователи. - Нажмите «Добавить». На вкладке «Основные» задайте имя, полное имя, способ аутентификации и пароль.
- На вкладке «Прочие» отметьте роли, выберите основной язык и режим запуска.
- Нажмите ОК.
В типовой конфигурации пользователей лучше создавать в режиме «Предприятие». Пользователь из конфигуратора не попадёт в справочник «Пользователи» и группы доступа, а роли, отмеченные вручную, разойдутся с профилями. Конфигуратор здесь — только для восстановления доступа администратора.
Своя роль
Новую роль создают в ветке Общие → Роли. В открывшемся окне слева дерево объектов, справа — список прав. Удобные флажки внизу окна:
- «Устанавливать права для новых объектов» — новые справочники и документы сразу получат права этой роли;
- «Устанавливать права для реквизитов и табличных частей по умолчанию» — права на реквизиты наследуются от объекта;
- «Независимые права подчинённых объектов» — реквизиты и табличные части настраиваются отдельно.
Основные права и что они дают:
| Право | Что разрешает |
|---|---|
| Чтение | Получать данные программно, в том числе в отчётах |
| Просмотр | Открывать формы и видеть данные |
| Добавление / Изменение | Создавать и менять объекты |
| Редактирование | Менять данные в формах |
| Проведение / Отмена проведения | Проводить документы |
| Интерактивная пометка удаления | Ставить пометку на удаление |
| Интерактивное удаление | Удалять сразу, без пометки |
Пометку на удаление можно дать всем, а «Интерактивное удаление» — никому из рядовых пользователей. Тогда удаление помеченных объектов останется за администратором, а ссылочная целостность — под контролем.
В типовой конфигурации типовые роли не правьте: это снимет базу с поддержки и усложнит каждое обновление. Свою роль добавляйте в расширение конфигурации . Роль из расширения можно включить в профиль группы доступа, как и типовую.
Ограничение доступа на уровне записей (RLS)
RLS (Record Level Security) отвечает на вопрос «какие именно записи». Например, менеджер видит только документы своей организации, кладовщик — только свой склад.
RLS в типовых конфигурациях
Программировать ничего не нужно, механизм уже встроен.
- В
Настройки пользователей и праввключите флажок «Ограничивать доступ на уровне записей». - Откройте профиль группы доступа. Появится вкладка с видами доступа: организации, склады, контрагенты — набор зависит от конфигурации.
- Для каждого вида выберите режим: «Все разрешены» (кроме перечисленных) или «Все запрещены» (кроме перечисленных).
- Конкретные значения можно задать прямо в группе доступа. Так один профиль «Кладовщик» обслуживает три группы: склад № 1, склад № 2 и склад № 3.
После включения RLS программа пересчитывает служебные данные доступа. В большой базе это занимает время, а запросы с ограничениями становятся тяжелее. Включайте в нерабочее время и проверяйте скорость открытия журналов.
RLS в конфигураторе
В роли у прав «Чтение», «Добавление», «Изменение» и «Удаление» есть поле ограничения доступа к данным. Туда пишется условие на языке запросов:
ГДЕ Организация = &ТекущаяОрганизация
Чтобы не повторять одно и то же условие в десятке объектов, на вкладке «Шаблоны ограничений» роли создают шаблон и вызывают его из ограничений по имени с параметрами. Параметр &ТекущаяОрганизация — это параметр сеанса, его заполняют при старте сеанса в модуле сеанса.
Помните: ограничение по чтению действует и на отчёты. Если сотруднику запрещена организация, оборотно-сальдовая ведомость покажет ему только разрешённые данные, без ошибки и без предупреждения.
Права на реквизиты, команды и элементы формы
Иногда нужно не закрыть документ целиком, а спрятать одно поле: закупочную цену от менеджера, оклад от кадровика без доступа к зарплате.
Права на реквизит. В роли раскройте объект до реквизита и снимите «Просмотр» и «Редактирование». Для этого у роли должен стоять флажок «Независимые права подчинённых объектов» или права реквизита надо задать явно. Поле исчезнет из форм и списков у пользователей с этой ролью.
Видимость элемента формы. В редакторе формы у элемента есть свойство пользовательской видимости с настройкой по ролям. Так можно скрыть кнопку или группу полей, не трогая права на данные. Это только интерфейс: данные остаются доступны через отчёты и обработки. Если информация действительно закрытая, снимайте право на реквизит, а не видимость.
Команды и разделы. В редакторе командного интерфейса подсистемы видимость команд настраивается по ролям. Это убирает лишние пункты из панели разделов, чтобы кладовщику не мешали «Зарплата» и «Банк».
| Способ | Защищает данные | Где настраивается |
|---|---|---|
| Право на реквизит в роли | Да | Конфигуратор, роль |
| Видимость элемента по ролям | Нет, только форма | Конфигуратор, форма |
| Видимость команды по ролям | Нет, только меню | Конфигуратор, командный интерфейс |
| Профиль без роли объекта | Да | Режим «Предприятие» |
Автоматизация: массовые изменения и код
Когда пользователей десятки, настройка по одному превращается в рутину. Что помогает:
- 📋 Копирование пользователя. В списке пользователей скопируйте карточку коллеги с такой же должностью: группы доступа перенесутся вместе с ней.
- 🔁 Копирование настроек. В
Настройки пользователей и прав → Настройки пользователейможно скопировать настройки отчётов, внешнего вида и личные настройки от одного пользователя другим. Это не права, но новому сотруднику не придётся заново собирать рабочий стол. - 👥 Группы пользователей. Меняете права отделу — меняете одну группу доступа, а не двадцать карточек.
- 🖥 Аутентификация ОС. Привязка к учётной записи Windows снимает вопросы паролей и блокировок при увольнении: заблокировали учётку в домене — вход в 1С закрылся.
В нетиповой базе пользователя можно создать кодом. Пример для внешней обработки, выполняемой под администратором:
НовыйПользователь = ПользователиИнформационнойБазы.СоздатьПользователя();
НовыйПользователь.Имя = "ivanova";
НовыйПользователь.ПолноеИмя = "Иванова Мария Петровна";
НовыйПользователь.АутентификацияСтандартная = Истина;
НовыйПользователь.Пароль = "Временный123";
НовыйПользователь.ПоказыватьВСпискеВыбора = Истина;
НовыйПользователь.Роли.Добавить(Метаданные.Роли.Бухгалтер);
НовыйПользователь.Записать();
Роль Бухгалтер в этом примере — условное имя: подставьте роль, которая есть в вашей конфигурации. В типовых конфигурациях так не делайте: в обход БСП пользователь не попадёт в группы доступа.
Проверка и аудит прав доступа
Права со временем расползаются: кому-то дали «временно», кто-то сменил должность. Раз в квартал стоит проверять, кто что может.
Отчёт по правам
В типовых конфигурациях есть отчёт о правах доступа. Его открывают из карточки пользователя или из списка пользователей. Он показывает, в каких группах состоит человек, какие профили и роли действуют и какие ограничения по видам доступа наложены.
В конфигураторе удобно смотреть обратную сторону: у какой роли есть право на объект. Для этого в контекстном меню объекта метаданных есть команда просмотра прав по ролям.
Журнал регистрации
Изменения пользователей фиксируются в журнале регистрации: Администрирование → Обслуживание → Журнал регистрации в БП 3.0. Отберите события по пользователям информационной базы и посмотрите, кто, когда и кого менял. Журнал пишет и неудачные попытки входа.
Частые ошибки и вопросы по правам доступа
Самые дорогие промахи администраторов:
- ❌ Удаление пользователя вместо блокировки. На него ссылаются документы, журнал, история изменений. Уволенному снимают флажок «Вход в программу разрешён», а карточку оставляют.
- ❌ Один логин на отдел. Журнал регистрации теряет смысл: невозможно понять, кто провёл документ задним числом.
- ❌ Правка типовых ролей. Работает до первого обновления, потом сравнение-объединение превращается в многочасовую работу.
- ❌ Скрытие поля через форму вместо прав. Закупочная цена пропала из карточки, но открыта в отчётах по продажам.
- ❌ RLS без проверки. Включили ограничения по организациям, а у главного бухгалтера пропали данные в отчётах, потому что одну организацию забыли разрешить.