Администрирование · 10 мин
Как сделать роли в 1С: создание и настройка прав доступа
Как сделать роли в 1С: создание роли в конфигураторе, настройка прав на объекты, RLS, назначение ролей пользователям, проверка и типичные ошибки.
Роли в 1С — это основной механизм разграничения прав доступа: они определяют, какие объекты конфигурации пользователь может видеть, добавлять, изменять и удалять. Без корректно настроенных ролей сотрудники либо получают избыточные права (что опасно для данных), либо не могут выполнять свою работу. Роли создаются и редактируются в конфигураторе, а назначаются пользователям уже в режиме предприятия или через администрирование.
В типовых конфигурациях (1С:Бухгалтерия, 1С:Управление торговлей, ЗУП) роли уже существуют, и чаще всего задача сводится к правильному назначению готовых ролей пользователям. Создавать роли с нуля требуется при доработке конфигурации или когда стандартный набор прав не подходит под бизнес-процесс компании.
Материал подходит для платформы 1С:Предприятие 8.3 и управляемых форм. Действия с конфигурацией описаны с учётом безопасной практики: сначала копия базы, потом изменения.
Что такое роль в 1С и как устроены права
Роль — это объект конфигурации, содержащий набор прав на объекты метаданных: справочники, документы, регистры, отчёты, обработки. Для каждого объекта можно разрешить или запретить отдельные действия: чтение, добавление, изменение, удаление, просмотр, интерактивное удаление, проведение документов и другие.
Права в 1С складываются по принципу «суммы разрешений»: если пользователю назначено несколько ролей, он получает объединение их прав. Запретить что-то одной ролью, если другая роль это разрешает, невозможно. Поэтому архитектуру прав строят от минимально необходимого набора, а не от «полных прав с ограничениями».
Отдельно стоит упомянуть предопределённые системные роли: «Полные права» и «Администратор системы». Они дают неограниченный доступ и обходят любые ограничения, включая RLS. Назначать их рядовым пользователям рабочей базы недопустимо — это самая частая причина инцидентов с данными.
Как создать новую роль в конфигураторе
Откройте базу в режиме конфигуратора (потребуется монопольный доступ для сохранения изменений конфигурации). В дереве конфигурации раскройте ветку «Общие», найдите «Роли», нажмите правой кнопкой и выберите «Добавить». Задайте имя роли латиницей без пробелов (например, МенеджерПоПродажам) и понятный синоним — он будет виден администраторам.
После создания роли откроется окно редактирования прав. В левой части — дерево всех объектов конфигурации, в правой — список доступных прав для выбранного объекта. Отмечайте галочками только те действия, которые реально нужны сотруднику с этой ролью.
- 1Сделайте резервную копию базы или работайте на копии
- 2Откройте конфигуратор, ветка «Общие → Роли → Добавить»
- 3Укажите имя и синоним роли
- 4В дереве объектов отметьте нужные права для каждого объекта
- 5Сохраните конфигурацию (F7) и обновите конфигурацию базы данных
- 6Назначьте роль тестовому пользователю и проверьте работу
Удобный приём: в окне редактирования роли есть кнопка «Установить права по шаблону» и возможность копировать права между объектами. Если вы создаёте роль, похожую на существующую, проще скопировать роль целиком (Ctrl+C/Ctrl+V в дереве) и убрать лишние права.
Какие права отмечать для типовых сценариев
Набор прав зависит от задач сотрудника. Разберём типичные ситуации.
Роль для менеджера по продажам
Менеджеру нужны: чтение справочников «Контрагенты», «Номенклатура», «Цены»; полные права (чтение, добавление, изменение, проведение) на документы продажи; чтение регистров остатков и взаиморасчётов; запуск отчётов по продажам. Права на удаление документов обычно не дают — вместо этого документы помечаются на удаление или отменяются проведение.
Роль «только просмотр»
Для руководителя или аудитора создают роль, где на все нужные объекты ставится только «Чтение» и «Просмотр». Важно: право «Просмотр» отвечает за интерактивный доступ (видимость в интерфейсе), а «Чтение» — за доступ на уровне данных, в том числе из запросов. Для просмотра данных в формах нужны оба.
Права на новые объекты
В свойствах роли есть флажок «Устанавливать права для новых объектов». Если он включён, при добавлении в конфигурацию новых справочников и документов роль автоматически получит на них права. Для строго ограниченных ролей этот флажок лучше снять — иначе новые объекты «протекут» пользователям без контроля.
Ограничение доступа на уровне записей (RLS)
Стандартные права действуют на объект целиком: либо пользователь видит все документы, либо не видит ни одного. Когда нужно, чтобы менеджер видел только своих контрагентов или только свою организацию, применяется механизм RLS (Row Level Security) — ограничение доступа на уровне записей.
RLS настраивается в том же окне редактирования роли: выбирается объект и право (обычно «Чтение»), а в поле «Ограничение доступа» пишется условие на встроенном языке запросов. Например, для ограничения по организации условие связывает поле документа с параметром сеанса текущего пользователя.
#Если &ОграничениеПоОрганизации #Тогда
Документ.Организация = &ТекущаяОрганизация
#КонецЕслиУчитывайте: RLS замедляет выполнение запросов, потому что платформа добавляет условие к каждому обращению к таблице. На больших базах с десятками ограничений это может ощутимо сказаться на скорости отчётов. Поэтому RLS внедряют точечно — только там, где это действительно требуется.
Назначение ролей пользователям
После обновления конфигурации роль нужно назначить конкретным пользователям. В конфигураторе откройте «Администрирование → Пользователи», выберите пользователя и на вкладке «Прочие» отметьте нужные роли. В типовых конфигурациях это делается в режиме предприятия: «Администрирование → Настройки пользователей и прав → Пользователи» — там роли часто сгруппированы в понятные профили групп доступа.
В типовых решениях на базе БСП (Библиотека стандартных подсистем) рекомендуется работать именно через профили групп доступа, а не назначать роли напрямую. Профиль — это надстройка над ролями, которая корректно учитывается механизмами конфигурации и не ломается при обновлениях.
Как выбрать способ назначения прав
Проверка результата и типичные ошибки
Проверять права нужно под учётной записью самого пользователя, а не под администратором. Запустите сеанс от его имени и пройдите рабочий сценарий целиком: создание документа, проведение, формирование отчёта. Ошибки «Нарушение прав доступа» укажут, какого именно права не хватает — в сообщении платформа обычно называет объект и действие.
Как проверить настройку прав
Пользователь видит только свои пункты меню и документы
Видны лишние разделы или, наоборот, пустой интерфейс
Документ сохраняется и проводится без ошибок
Ошибка «Нарушение прав доступа» при записи
Отчёт формируется и показывает разрешённые данные
Пустой отчёт при наличии данных или ошибка доступа к регистру
Видны только записи своей организации/подразделения
Видны чужие данные или не видны свои
Если прав не хватает, полезен технологический журнал с событием доступа или отладчик: в момент ошибки видно, к какому объекту идёт обращение. Частая ситуация — документ при проведении делает движения по регистру, на который у пользователя нет прав, хотя сам документ ему доступен.
FAQ: частые вопросы о ролях в 1С
Можно ли создать роль без конфигуратора?
Нет, создание и изменение ролей возможно только в конфигураторе, так как роль — объект метаданных. Но в типовых конфигурациях администратор может собирать нужные комбинации из готовых ролей через профили групп доступа в режиме предприятия, не заходя в конфигуратор.
Почему пользователю с несколькими ролями всё равно отказано в доступе?
Права в 1С только складываются, запретов нет. Значит, ни одна из назначенных ролей не содержит нужного права. Проверьте, есть ли право именно на то действие и объект, которые указаны в тексте ошибки, — например, право на регистр, а не только на документ.
Чем роль отличается от профиля групп доступа?
Роль — технический объект конфигурации с набором прав. Профиль групп доступа — пользовательская надстройка в типовых конфигурациях, которая объединяет роли в понятные администратору наборы («Бухгалтер», «Кассир»). В типовых решениях назначать пользователям следует профили.
Что делать, если после обновления конфигурации права слетели?
Если роли были изменены вручную в типовой конфигурации, обновление могло вернуть типовые настройки. Проверьте права после каждого обновления, а собственные доработки прав выносите в отдельные роли или расширение — тогда обновления их не затронут.
Как быстро дать пользователю права «как у коллеги»?
В конфигураторе откройте пользователя-образец, посмотрите список его ролей и назначьте тот же набор новому пользователю. В типовых конфигурациях достаточно включить пользователя в ту же группу доступа, что и коллега.
Влияет ли количество ролей у пользователя на скорость работы?
Обычное количество ролей (до нескольких десятков) на производительность практически не влияет. Заметное замедление вызывает не число ролей, а сложные RLS-ограничения, которые платформа подставляет в каждый запрос к ограниченным таблицам.
Что важно запомнить
Роли создаются в конфигураторе через «Общие → Роли», права отмечаются по объектам, ограничения на уровне записей задаются через RLS. Права пользователя — это сумма его ролей, запретов не существует. Работайте на копии базы, не меняйте типовые роли, проверяйте результат под учётной записью реального пользователя.