Что делать, если у пользователей 1С сняты права администратора и нет доступа в Конфигуратор?

Системный администратор IT и автоматизация бизнеса
← На главную

Рассмотрим распространенную и неприятную ситуацию: в информационной базе случайно или ошибочно были сняты административные права у единственного администратора. В результате закрылся доступ в Конфигуратор, а выгрузка базы через .dt или выполнение административных действий стали невозможны. Разберем по шагам, как можно восстановить доступ и вернуть права администратора в различных режимах работы 1С.

Выясним причину возникновения проблемы

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

  1. Рассинхронизация прав платформы и прикладных решений на базе БСП: В современных конфигурациях учетные записи платформы связаны со справочниками режима «1С:Предприятие» (справочники Пользователи, Профили групп доступа и Группы доступа). Изменение прав в интерфейсе программы может привести к снятию ролей на уровне платформы.
  2. Ошибки программной записи пользователей: При выполнении внешних скриптов или групповых обработок без вызова штатных проверок роли Администратор системы или Полные права могут быть сняты.
  3. Проверка ручного ввода учетных данных: Иногда пользователь с правами администратора просто не отображается в списке выбора при старте программы, но при ручном вводе логина и пароля авторизация проходит успешно.

Решение 1. Использование внешней обработки для восстановления прав

Разберем случай, когда у кого-то из оставшихся пользователей 1С сохранилось право запуска внешних обработок (роль ИнтерактивныйЗапускВнешнихОбработок). Это наиболее безопасный вариант, так как он не требует прямой правки структуры базы данных.

Посмотрим на алгоритм действий:

  1. Подготовим внешнюю обработку с расширением .epf, которая программно создает учетную запись администратора платформы.
  2. Для создания пользователя с правами администратора в BSL используется следующий код:

НовыйПользователь = ПользователиИнформационнойБазы.СоздатьПользователя();
НовыйПользователь.Имя = "AdminRestore";
НовыйПользователь.ПолноеИмя = "Восстановленный Администратор";
НовыйПользователь.Аутентификация1СПредприятия = Истина;
НовыйПользователь.Пароль = "Admin123Pass";
НовыйПользователь.Роли.Добавить(Метаданные.Роли.АдминистраторСистемы);
НовыйПользователь.Записать();

После выполнения обработки в базе появится новый пользователь AdminRestore, под которым можно войти в Конфигуратор и восстановить полноценную работу.

Решение 2. Сброс списка пользователей в файловой базе (1Cv8.1CD)

Если доступ к внешним обработкам закрыт, а база является файловой, рассмотрим варианты редактирования файла 1Cv8.1CD. Важно: перед выполнением каких-либо манипуляций обязательно сделайте резервную копию файла базы данных!

Рассмотрим два основных способа правки файловой базы:

  1. Использование специализированных утилит (например, Tool_1CD):

    С помощью утилиты открываем файл базы данных, находим таблицу V8USERS и экспортируем корректную таблицу пользователей из чистой или резервной базы, либо модифицируем существующие записи. После сохранения изменений список пользователей обновится.

  2. Сброс учетных записей через HEX-редактор:

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

    В HEX-редакторе находят и переименовывают упоминания таблиц users.usr (в таблице params) и V8USERS. После этого платформа перестает видеть список пользователей и открывает Конфигуратор без запроса логина и пароля.

Рассмотрим рекомендации при работе с новыми форматами файловых баз:

  1. В свежих версиях платформы для правки BLOB-полей может потребоваться предварительная конвертация базы консольной утилитой cnvdbfl.exe в формат 8.2.14.
  2. После любых нештатных правок файла 1Cv8.1CD обязательно выполните проверку и исправление целостности базы через утилиту chdbfl.exe.

Решение 3. Очистка системных таблиц пользователей в клиент-серверной базе (SQL)

Проанализируем порядок действий для базы, работающей под управлением СУБД (Microsoft SQL Server, PostgreSQL и др.). В клиент-серверном варианте список пользователей платформы хранится в системных таблицах базы данных.

  1. Откроем среду управления СУБД (например, SQL Server Management Studio).
  2. Выполним очистку данных в таблицах v8users и удалим запись о пользователях из таблицы params (строка users.usr).
  3. После выполнения SQL-запросов перезапустим службу кластера 1С или сеансы. При следующем открытии Конфигуратора платформа запустится без запроса логина и позволит создать нового администратора.

Особенности работы с конфигурациями на базе БСП

Выясним важный нюанс: в современных типовых конфигурациях (Бухгалтерия предприятия 3.0, Управление торговлей 11, ERP) простого создания пользователя в Конфигураторе может быть недостаточно. При попытке сохранить изменения в режиме «1С:Предприятие» система может выдать ошибку о том, что в базе нет администраторов.

Чтобы избежать этой проблемы, разберем порядок действий в режиме «1С:Предприятие»:

  1. Зайдем в систему под созданным администратором платформы.
  2. Перейдем в справочник Пользователи и свяжем созданную учетную запись платформы с элементом справочника.
  3. Назначим данному пользователю профиль групп доступа Администратор и включим его в соответствующую группу доступа.
← На главную