Роли, профили и группы доступа: где на самом деле меняются права пользователя 1С
Содержание
В типовых конфигурациях 1С 8.3 (Бухгалтерия 3.0, ЗУП 3.1, УТ 11) права доступа
меняют не в Конфигураторе, а в пользовательском режиме: Администрирование → Настройки пользователей и прав → Группы доступа и Профили групп доступа. Пользователя включают в группу доступа, а группе назначают профиль — набор ролей. Роли в Конфигураторе правят только в самописных базах или через расширение.
Частая ошибка — открыть Конфигуратор
и поставить пользователю галочку на нужной роли прямо в списке Администрирование → Пользователи. В типовой базе это сработает до первой записи пользователя в программе: подсистема управления доступом пересчитает роли по группам доступа и снимет «лишнюю» галочку. Поэтому изменить права так, чтобы они держались, можно только через профили и группы.
Как устроена защита данных в 1С
Права в 1С складываются из трёх слоёв. Их полезно различать, потому что каждый меняется в своём месте.
| Слой | Что определяет | Где меняется |
|---|---|---|
| Роль | Какие объекты доступны и какие действия с ними разрешены | Конфигуратор: Общие → Роли |
| Профиль групп доступа | Набор ролей под должность (бухгалтер, кладовщик, кадровик) | Пользовательский режим, типовые конфигурации |
| Группа доступа | Кто получает профиль и с какими ограничениями (по организациям, складам) | Пользовательский режим, типовые конфигурации |
Ключевое правило платформы: права только складываются. Если у пользователя две роли и одна разрешает изменение документа, а другая нет, — изменение разрешено. Запретить что-то «поверх» выданного нельзя. Чтобы отнять право, нужно убрать роль, которая его даёт.
Отсюда простое следствие: пользователь с ролью ПолныеПрава видит и меняет всё, какие бы ограничения ни стояли в других ролях.
💡 Если в списке пользователей базы нет ни одной записи, 1С пускает всех без авторизации с полными правами. Как только вы создадите первого пользователя, платформа потребует, чтобы хотя бы у одного были административные права, — иначе в базу никто не сможет зайти администратором.
Пошагово: меняем права в типовой конфигурации
Процедура одинакова в БП 3.0, ЗУП 3.1 и УТ 11 — все они построены на одной библиотеке стандартных подсистем.
| Конфигурация | Где группы и профили доступа |
|---|---|
| Бухгалтерия предприятия 3.0 | Администрирование → Настройки пользователей и прав |
| ЗУП 3.1 | Администрирование → Настройки пользователей и прав |
| Управление торговлей 11 | НСИ и администрирование → Настройки пользователей и прав |
Шаг 1. Проверьте, в каких группах состоит пользователь
- Откройте
Пользователии найдите нужного сотрудника. - В карточке пользователя откройте
Права доступа. - Посмотрите список групп доступа, в которых он участник, и профили этих групп.
Часто проблему решает простое добавление человека в уже существующую группу. Новый профиль создавать не нужно.
Шаг 2. Добавьте или уберите пользователя из группы
- Перейдите в
Группы доступа. - Откройте группу, например «Бухгалтеры».
- На вкладке
Участникидобавьте пользователя через подбор или удалите строку. - Нажмите
Записать и закрыть.
Права применятся после повторного входа пользователя в программу. Пока он не перезапустит сеанс, работает старый набор ролей.
Шаг 3. Создайте свой профиль, если поставляемых не хватает
Поставляемые профили («Бухгалтер», «Главный бухгалтер», «Кадровик» и другие) защищены от изменения. Редактировать можно только их копию.
- Откройте
Профили групп доступа. - Выделите профиль, ближайший к нужному набору, и скопируйте его.
- Дайте копии понятное имя: «Бухгалтер без зарплаты», «Кладовщик — только просмотр».
- На вкладке
Разрешенные действия (роли)снимите или поставьте флажки ролей. - Запишите профиль.
- Создайте группу доступа с этим профилем или поменяйте профиль у существующей группы.
Скопированный профиль не обновляется вместе с конфигурацией. Если в новом релизе в поставляемый профиль «Бухгалтер» добавили роль для нового документа, ваша копия её не получит. После крупных обновлений сравнивайте свои профили с поставляемыми — иначе пользователи внезапно потеряют доступ к новому функционалу.
Шаг 4. Настройте ограничения в группе
Если в базе включены ограничения на уровне записей, у группы доступа появляется вкладка с видами доступа: организации, склады, подразделения и другие — набор зависит от конфигурации. Здесь указывают, какие именно значения разрешены. Подробнее — в разделе про RLS ниже.
Роли в Конфигураторе: создание и правка
В самописной конфигурации или там, где подсистемы управления доступом нет, права задаются ролями напрямую.
Создание роли
- Откройте Конфигуратор, ветку
Общие → Роли. - Добавьте новую роль, задайте имя и синоним.
- В окне роли выберите объект слева (справочник, документ, регистр) и поставьте права справа.
Основные права объекта:
- 📖
ЧтениеиПросмотр— чтение данных программно и открытие в интерфейсе. - ➕
ДобавлениеиИнтерактивное добавление— создание новых элементов. - ✏️
ИзменениеиРедактирование— правка существующих. - 🗑️
УдалениеиИнтерактивное удаление— удаление. Интерактивное удаление обычным пользователям не дают: достаточно пометки на удаление. - 📌
ПроведениеиОтмена проведения— для документов.
Права с приставкой «Интерактивное» и Просмотр/Редактирование зависят от базовых. Без Чтения не будет Просмотра, без Изменения — Редактирования.
Свойства роли, которые часто упускают
В палитре свойств роли есть три флажка:
Устанавливать права для новых объектов— новые объекты конфигурации сразу получат полный доступ в этой роли. Для узких ролей флажок снимают, иначе после доработки пользователь увидит всё новое.Устанавливать права для реквизитов и табличных частей по умолчанию— реквизиты наследуют права объекта.Независимые права подчиненных объектов— позволяет управлять правами отдельных реквизитов независимо от объекта.
Назначение роли пользователю
Администрирование → Пользователи → карточка пользователя → вкладка Прочие → отметьте роли. В типовой конфигурации так не делайте — причина описана в начале.
Роль в типовой конфигурации через расширение
Если поставляемых ролей не хватает, не снимайте конфигурацию с поддержки. Создайте расширение (Конфигурация → Расширения конфигурации, доступно с платформы 8.3.6), добавьте в него роль и выдайте права на нужные объекты. Роль расширения появится в списке ролей профиля, её можно включить в свой профиль групп доступа.
Что продумать до того, как менять права
Права проще настроить правильно один раз, чем потом разбираться, почему кладовщик провёл платёжку. Перед правкой ответьте себе на четыре вопроса.
- Какую задачу решает человек? Опишите словами: «вводит поступления, печатает накладные, не видит зарплату». Это и есть будущий профиль.
- Есть ли поставляемый профиль, близкий к задаче? В типовых конфигурациях их десятки. Свой профиль создавайте только если готовый не подходит.
- Нужны ли ограничения по организациям или складам? Если в базе одна организация и один склад — RLS включать незачем.
- Кто будет поддерживать настройку? Свои профили и роли расширения придётся сверять после каждого крупного обновления.
💡 Заведите тестового пользователя с тем же набором групп и проверяйте права под ним. Входить под учётной записью сотрудника, сбрасывая его пароль, — плохая практика: он узнает об этом при следующем входе.
Как отнять отдельное право или скрыть реквизит
Раз права только складываются, «исключить» право можно тремя способами.
| Способ | Когда подходит | Риски |
|---|---|---|
| Убрать роль из профиля | Роль даёт ровно то, что нужно отнять | Роль может давать и нужные права — проверьте её состав |
| Собрать профиль из более узких ролей | Типовой профиль слишком широк | Больше работы, нужна сверка после обновлений |
| Изменить права в роли (Конфигуратор) | Самописная база или своя роль | В типовой — снятие с поддержки |
Скрыть реквизит, например цену или сумму
- В роли включите
Независимые права подчиненных объектов. - Раскройте объект, выберите реквизит.
- Снимите
ПросмотриРедактирование.
Пользователь не увидит поле на форме. Но если тот же реквизит доступен ему через другую роль — права сложатся, и поле останется видимым.
Убрать команду или раздел из интерфейса
Скрыть кнопку настройкой формы — это не защита. Пользователь вернёт её через Ещё → Изменить форму или откроет объект через отчёт. Защищают данные только права в ролях. Настройку интерфейса используйте для удобства, а не для запрета.
Ограничения на уровне записей (RLS)
RLS ограничивает доступ не к объекту целиком, а к отдельным записям: бухгалтер видит документы только своей организации, кладовщик — только своего склада.
Включение в типовой конфигурации
- Откройте
Настройки пользователей и прав. - Установите флажок
Ограничивать доступ на уровне записей. - Дождитесь окончания обновления доступа — в больших базах оно идёт в фоне через регламентное задание и может занять часы.
- В группе доступа на вкладке ограничений выберите вид доступа (например, «Организации») и укажите разрешённые значения.
У каждого вида доступа есть режим: «Все разрешены» с исключениями или «Все запрещены» с разрешёнными значениями. Второй вариант надёжнее: новая организация в базе не откроется пользователю автоматически.
RLS заметно нагружает запросы. В базе на 50+ пользователей с ограничениями по нескольким видам доступа отчёты могут формироваться медленнее. Включайте только те виды доступа, которые реально нужны.
RLS в своей роли
В Конфигураторе для права Чтение или Изменение объекта можно задать условие ограничения — текст на языке запросов. Пример: пользователь видит документы реализации только по своему подразделению.
Реализация ГДЕ Реализация.Подразделение = &ТекущееПодразделение
Параметр ТекущееПодразделение задают в модуле сеанса через ПараметрыСеанса. В типовых конфигурациях ограничения пишут не вручную, а через шаблоны подсистемы управления доступом — править их без опыта разработки не стоит.
Почему пользователю не хватает прав: диагностика
Самый частый симптом — окно Нарушение прав доступа! при открытии документа, отчёта или при проведении. Второй — пустой список там, где у коллеги записи есть.
Отчёт о правах доступа
В карточке пользователя есть отчёт о его правах: какие объекты доступны на чтение, изменение, добавление и через какие группы доступа. Это быстрее, чем перебирать профили вручную. Сформируйте его для «проблемного» пользователя и для коллеги, у которого всё работает, — разница покажет недостающую роль.
Проверка в Конфигураторе
В самописной базе удобна сводная таблица: в дереве конфигурации на ветке Роли вызовите контекстное меню и выберите Все роли. Откроется матрица «объекты × роли», где видно, какая роль даёт доступ к нужному объекту.
Частые вопросы
Можно ли запретить пользователю удалять документы, но оставить изменение?
Интерактивное удаление, оставьте пометку на удаление. Окончательно удалять помеченное будет администратор.