1C Skills: роли, права и безопасные изменения конфигурации

Как анализировать и создавать роли 1С с помощью role-info, role-compile и role-validate, не выдавая лишние права.

Article

Роль 1С — один из самых чувствительных объектов конфигурации. Ошибка в форме заметна сразу, а лишнее право может месяцами оставаться незамеченным. 1C Skills разделяет анализ, создание и проверку ролей.

Сначала изучить существующее

role-info строит сводку по Rights.xml: объекты, действия, RLS и шаблоны ограничений. Перед созданием новой роли сравните две-три похожие роли проекта.

Сравни роли МенеджерПродаж и СтаршийМенеджер. Покажи различия по документам реализации, ценам и отчётам. Ничего не меняй.

Создание минимальных прав

role-compile создаёт роль из явного описания. Не просите «дать доступ к продажам» — перечислите операции: чтение контрагентов и номенклатуры; просмотр заказов; создание и изменение собственных заказов; без удаления и закупочных цен.

Если требуется RLS, условие формулируется отдельно и проверяется на пользователях из разных подразделений.

Валидация — не аудит

role-validate находит структурные ошибки и ссылки на отсутствующие объекты. Он не определит, что менеджеру случайно выдали чтение зарплаты, если право технически допустимо. После валидации нужен смысловой diff относительно ближайшей базовой роли.

Проверка в базе

Создайте тестового пользователя только с новой ролью. Проверьте позитивные сценарии и запреты: объект должен открываться там, где разрешён, и оставаться недоступным в отчётах, подборе и универсальных инструментах.

Изменения прав лучше выпускать отдельным коммитом. Тогда code review не теряет их среди формы и бизнес-логики, а откат не затрагивает другие части функциональности.

Статьи по теме