Роли и права пользователей в 1С 8.3: где менять и как не сломать доступ
Содержание
Роль в 1С редактируют в Конфигураторе: Конфигурация → Открыть конфигурацию, ветка Общие → Роли, двойной щелчок по роли открывает таблицу прав. Но в типовых базах (Бухгалтерия 3.0, ЗУП 3.1, УТ 11) роли обычно не трогают совсем: права пользователю меняют в режиме «Предприятие» через профили групп доступа, а новую роль, если без неё не обойтись, добавляют расширением.
Правило простое: если нужный набор прав уже есть в какой-то роли, меняйте профиль. Если такой роли нет — пишите свою в расширении. Прямая правка типовой роли в Конфигураторе оправдана только в самописной или снятой с поддержки базе.
Где настраивают права: три режима и когда какой нужен
Управление правами доступа в 1С 8.3 устроено в два слоя. Нижний слой — роли, это объекты метаданных конфигурации. Верхний — профили и группы доступа, это обычные данные базы, их меняет администратор без Конфигуратора.
| Где | Что меняется | Кто делает | Риск |
|---|---|---|---|
Администрирование → Настройки пользователей и прав (режим «Предприятие») | Набор ролей в профиле, состав групп, ограничения по организациям и другим видам доступа | Администратор базы | Минимальный, обновление конфигурации не страдает |
| Расширение конфигурации | Собственная роль с правами на нужные объекты | Программист 1С | Низкий, типовая конфигурация остаётся на поддержке |
Конфигуратор, ветка Общие → Роли | Сами права внутри роли | Программист 1С | Высокий: при обновлении изменения придётся сравнивать и объединять |
💡 В небольших самописных конфигурациях без профилей групп доступа роли назначают напрямую: в Конфигураторе Администрирование → Пользователи, карточка пользователя, вкладка Прочие, флажки нужных ролей.
Как создать роль на основе существующей
Готовую роль удобнее скопировать, чем собирать с нуля: в типовой роли уже выставлены права на справочники, регистры и константы, без которых форма документа не откроется.
- Сделайте резервную копию:
Администрирование → Выгрузить информационную базув Конфигураторе, файл.dt. - Откройте конфигурацию, раскройте
Общие → Роли. - Выделите роль-образец и нажмите
F9(копирование) или команду копирования в контекстном меню. - Задайте новое имя латиницей или кириллицей без пробелов, например
ЧтениеОтчетовПоПродажам, и понятный синоним — его увидит администратор в списке ролей. - Уберите лишние права, добавьте нужные (порядок — в следующем разделе).
- Сохраните и обновите конфигурацию базы данных (
F7).
В типовой конфигурации на поддержке ветка ролей заблокирована. Чтобы добавить роль в основную конфигурацию, придётся включить возможность изменения: Конфигурация → Поддержка → Настройка поддержки. После этого каждое обновление типовой конфигурации будет требовать сравнения и объединения.
Поэтому для типовых баз есть путь проще: создайте расширение (Конфигурация → Расширения конфигурации → Добавить), добавьте в него собственную роль, заимствуйте нужные объекты основной конфигурации и выдайте на них права в этой роли. Основная конфигурация остаётся на поддержке.
Ручное редактирование прав доступа к объектам
Форма роли состоит из двух частей. Слева — дерево объектов конфигурации: сама конфигурация, справочники, документы, регистры, отчёты, обработки и т.д. Справа — список прав выделенного объекта.
Какие права бывают
Набор прав зависит от типа объекта. Для документа он самый длинный:
- 📖
Чтение— данные можно получить программно, в том числе в отчётах; - 👁
Просмотр— пользователь видит объект в списке и открывает форму; - ➕
ДобавлениеиИзменение— программная запись; - ✏️
Интерактивное добавлениеиРедактирование— те же действия через формы; - 🗑
УдалениеиИнтерактивное удаление— физическое удаление; пометку удаления даёт отдельное право на интерактивную пометку; - 📌
Проведение,Отмена проведенияи их интерактивные варианты — только у документов.
Права связаны. Без Чтения не выставить Просмотр, без Изменения — Редактирование. Платформа ставит зависимые права сама, когда вы отмечаете верхнее, и снимает их вместе с ним.
Права на уровне конфигурации
Выделите в дереве корневой элемент — название конфигурации. Здесь права, которые действуют на всю базу:
| Право | Что даёт | Кому давать |
|---|---|---|
Администрирование | Управление пользователями, обновление, все административные функции | Только администраторам |
Монопольный режим | Запуск без других сеансов | Администраторам |
Тонкий клиент, Веб-клиент, Толстый клиент | Возможность запускаться соответствующим клиентом | По составу рабочих мест |
Вывод | Печать, запись в файл и копирование в буфер из табличных документов | Почти всем; снимают, если данные нельзя выносить |
Сохранение данных пользователя | Запоминание настроек форм и отчётов | Всем |
Без права на запуск хотя бы одного клиента пользователь с этой ролью не войдёт в базу, если других ролей у него нет. Это частая причина жалоб «не пускает в программу» после ручной сборки роли.
Флажки внизу формы роли
Устанавливать права для новых объектов— новые объекты метаданных сразу получат все права в этой роли. Для ограничительной роли флажок снимают, иначе после доработки пользователь получит лишний доступ.Устанавливать права для реквизитов и табличных частей по умолчанию— реквизиты наследуют права владельца. Снимают, когда нужно закрыть отдельное поле, например сумму оклада.Независимые права подчинённых объектов— права реквизитов и табличных частей настраиваются отдельно от объекта.
💡 Права пользователя складываются из всех его ролей. Запретить что-то ролью нельзя: если одна роль даёт Удаление, другая роль его не отберёт. Чтобы закрыть доступ, уберите право из всех ролей пользователя.
Пример: роль «только просмотр» для аудитора
Задача: проверяющему нужно видеть документы и отчёты, но ничего не менять.
- Создайте новую роль, снимите флажок
Устанавливать права для новых объектов. - На корне конфигурации отметьте
Тонкий клиент,Сохранение данных пользователяиВывод, если аудитору нужна печать. - У документов, справочников и регистров отметьте только
ЧтениеиПросмотр. - У отчётов —
ИспользованиеиПросмотр. - Права на запись, удаление и проведение не ставьте нигде.
Если при открытии формы появляется сообщение о нарушении прав, значит форма читает ещё какой-то объект — константу, регистр сведений или другой справочник. Добавьте ему Чтение и проверьте снова.
Работа с профилями групп доступа в типовых конфигурациях
В Бухгалтерии 3.0, ЗУП 3.1, УТ 11 и других конфигурациях на Библиотеке стандартных подсистем пользователю роли напрямую не назначают. Схема такая: роли собраны в профиль, профиль привязан к группе доступа, пользователь входит в группу.
Путь: Администрирование → Настройки пользователей и прав. Там ссылки Профили групп доступа, Группы доступа, Пользователи.
Как изменить набор ролей в профиле
- Откройте
Профили групп доступа. Поставляемые профили («Бухгалтер», «Кадровик», «Менеджер по продажам») изменить нельзя — их состав обновляется вместе с конфигурацией. - Выделите похожий профиль и скопируйте его кнопкой копирования в командной панели списка.
- В копии задайте имя, например «Бухгалтер без удаления».
- На вкладке с разрешёнными действиями отметьте нужные роли и снимите лишние. Включите показ всех ролей, если нужная не видна в кратком списке.
- Запишите профиль.
- Откройте
Группы доступа, создайте группу с новым профилем и добавьте в неё участников.
Пользователь может состоять в нескольких группах — его права сложатся. Если человек остался в старой группе «Бухгалтер», удаление ему по-прежнему разрешено, сколько ни правь новый профиль.
Ограничения и исключения в правах
Роль отвечает на вопрос «что можно делать с документами реализации». Вопрос «с реализациями какой организации» решают ограничения на уровне записей (RLS).
Включение ограничений в типовой базе
Администрирование → Настройки пользователей и прав, флажокОграничивать доступ на уровне записей.- В профиле на вкладке ограничений выберите вид доступа: организации, контрагенты, склады, физические лица — набор зависит от конфигурации.
- Для каждого вида задайте режим: «все разрешены» с исключениями или «все запрещены» с исключениями.
- Конкретные значения (например, ООО «Север») обычно задают в группе доступа, чтобы один профиль работал для разных групп.
Ограничения на уровне записей замедляют списки и отчёты в больших базах. Включайте их, когда разделение данных действительно нужно, и проверяйте скорость открытия журналов после включения.
Ограничение в собственной роли
В Конфигураторе у прав Чтение, Добавление, Изменение, Удаление есть поле условия ограничения доступа к данным. Условие пишут на языке запросов, например:
ГДЕ Организация = &ТекущаяОрганизация
Параметр сеанса ТекущаяОрганизация должен существовать в конфигурации и заполняться при входе — это делает программист в модуле сеанса. В типовых конфигурациях на БСП условия в ролях построены на шаблонах ограничений; дописывать свои условия к типовым ролям не стоит, используйте виды доступа в профилях.
Типичные исключения
- 🔒 Закрыть одно поле (оклад, закупочную цену) — права на реквизит при независимых правах подчинённых объектов, либо функциональная опция в типовой конфигурации, если она есть.
- 🧾 Разрешить смотреть отчёт, не давая открывать документы —
Просмотру отчёта иЧтениеу регистров, на которых он построен.Просмотру документа не нужен. - 📅 Запретить правку прошлых периодов — это не роль, а дата запрета изменения:
Администрирование → Проведение документовв Бухгалтерии 3.0.
Проверка и сохранение изменений роли
Сохранение
- В Конфигураторе:
Файл → Сохранить, затемКонфигурация → Обновить конфигурацию базы данных(F7). Изменение ролей не требует реструктуризации таблиц, обычно применяется динамически, без монопольного режима. - Пользователи получат новые права после повторного входа в программу. Открытые сеансы работают по старым правам.
- В расширении: после правки роли обновите конфигурацию базы данных или сохраните расширение в базу, если оно редактируется отдельно.
- Изменения профилей и групп доступа в режиме «Предприятие» действуют после записи; пользователю тоже лучше перезайти.
Проверка
Проверяйте под реальной учётной записью или тестовой с тем же набором групп, а не под администратором.
💡 В типовых конфигурациях из карточки пользователя открывается отчёт о его правах доступа: он показывает итоговые права по объектам и из какой группы они пришли. Это быстрый способ понять, откуда у человека лишнее право.
При отказе в доступе 1С выдаёт сообщение Нарушение прав доступа! — по нему понятно, что права не хватает, но не какого. Включите технологический журнал или посмотрите журнал регистрации: там видно, к какому объекту было обращение.
Частые ошибки при редактировании ролей
- ❌ Правка поставляемой роли в основной конфигурации. При следующем обновлении изменение попадает в сравнение-объединение, и его легко потерять. Делайте свою роль в расширении.
- ❌ Попытка запретить действие второй ролью. Права только складываются. Ищите роль, которая даёт лишнее, и убирайте её из профиля.
- ❌ Флажок «Устанавливать права для новых объектов» в ограничительной роли. После доработки конфигурации у пользователя появятся права на новые документы.
- ❌ Роль «Полные права» бухгалтеру «на время». С ней пользователь получает право администрирования, видит всех пользователей и может менять их пароли. Временные решения в правах остаются навсегда.
- ❌ Проверка под администратором. У него есть всё, ошибки в новой роли не проявятся.
- ❌ Пользователь в двух группах. Новый урезанный профиль не работает, потому что старая группа даёт прежние права.