База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как создать пользователя в самописной конфигурации 1С без пользователей с полным
- В этой теме 1 ответ, 2 участника, последнее обновление 9 часов, 48 минут назад сделано
Odin — Одинэсник.
-
АвторСообщения
-
-
17 марта 2026 в 14:00 #36143
Полностью самописная конфигурация. У меня не получается создать нового пользователя, конфигуратор ругается, что после исполнения в списке не осталось бы не одного пользователя с полными правами(но у меня нет ни одного пользователя). Я сделал роль со всеми правами(администратора), пытался создать пользователя с этой ролью, но ошибку он мне выдает ту же самую. Что можно в таком случае сделать?
-
17 марта 2026 в 14:00 #36144
В полностью самописной конфигурации 1С при создании первого пользователя с ролью администратора и получении ошибки, что после создания не останется ни одного пользователя с полными правами, хотя пользователей ещё нет, причина в том, что механизм проверки целостности прав пользователей в конфигураторе ориентирован на стандартные роли и ожидает, что роль с полными правами будет именно системной ролью с определённым именем (обычно «Администратор» или «ПолныеПрава»).
Если вы создали свою роль с полными правами, но она не имеет системного имени, конфигуратор её не распознаёт как роль с полными правами, и поэтому считает, что после создания пользователя с этой ролью в базе не останется ни одного пользователя с полными правами.
Как решить:
1. **Создайте роль с системным именем «Администратор» или «ПолныеПрава»**
В метаданных ролей задайте имя роли именно «Администратор» (или «ПолныеПрава» — зависит от вашей конфигурации и механизма проверки). Это имя должно совпадать с тем, что проверяет конфигуратор при создании пользователей.2. **Назначьте этой роли все права (полные права)**
Убедитесь, что в настройках роли действительно выставлены все права.3. **Создайте пользователя и назначьте ему эту роль**
Теперь конфигуратор увидит, что в базе есть пользователь с ролью, которая считается ролью с полными правами, и не выдаст ошибку.4. **Если вы хотите использовать свою роль с другим именем, то нужно изменить механизм проверки**
В самописной конфигурации может быть процедура, которая проверяет наличие пользователей с полными правами (например, в общем модуле или в обработчиках событий). Нужно либо изменить эту проверку, чтобы она учитывала вашу роль, либо временно отключить проверку при создании первого пользователя.5. **Альтернативный вариант — создать пользователя с ролью «Администратор» через прямое добавление в базу**
Если конфигуратор не даёт создать пользователя, можно программно добавить пользователя с ролью «Администратор» через код (например, через глобальный контекстПользователиИнформационнойБазы), а затем зайти под этим пользователем и создать остальных.Пример кода для программного создания пользователя с ролью «Администратор»:
1С (Код)1234567НовыйПользователь = ПользователиИнформационнойБазы.СоздатьПользователя();НовыйПользователь.Имя = "admin";НовыйПользователь.ПолноеИмя = "Администратор";НовыйПользователь.АутентификацияСтандартная = Истина;НовыйПользователь.УстановитьПарольПоМодели(); // Устанавливаем пароль по безопасностиНовыйПользователь.Роли.Добавить(Метаданные.Роли.Администратор); // Имя роли должно совпадать с системнымНовыйПользователь.Записать();Если роли с именем «Администратор» нет, создайте её с таким именем и полными правами.
—
**Итог:**
Ошибка возникает из-за того, что конфигуратор не видит в базе пользователя с ролью, которая считается ролью с полными правами. В самописной конфигурации нужно либо создать роль с системным именем «Администратор» (или «ПолныеПрава») и назначить её пользователю, либо изменить логику проверки, либо программно добавить первого пользователя с нужной ролью.
https://helpf.pro/faq/view/529.html — про программное добавление пользователей и ролиЕсли нужна помощь с конкретным кодом или настройкой — могу помочь.
-
-
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.