Ситуация, когда после успешного входа в Конфигуратор система отказывается пускать пользователя в режим Предприятие, выдавая ошибку «Авторизация пользователя не выполнена», является довольно распространенной для определенных релизов платформы 1С:Предприятие 8.3.18. Особенно часто это проявляется при переносе базы с одного сервера на другой или при создании копии базы для тестирования обновлений. В данной статье мы подробно разберем, почему это происходит и какие шаги необходимо предпринять для восстановления работоспособности системы.
Прежде чем переходить к активным действиям, давайте проанализируем, почему возникает такой диссонанс: в Конфигуратор зайти можно, а в Предприятие — нет. Основная причина кроется в различии механизмов аутентификации. В режиме Конфигуратор проверка прав зачастую происходит по упрощенной схеме, в то время как Предприятие инициирует полноценную проверку через системные таблицы и механизмы безопасности платформы. В платформе 8.3.18 (особенно в релизах ниже 1334) были зафиксированы ошибки, связанные с некорректным хэшированием паролей и нарушением связи между пользователями информационной базы и их записями в SQL-таблицах.
Рассмотрим стандартную ситуацию: администратор выгружает базу в файл .dt, создает новую базу на SQL-сервере и загружает данные. На платформе 8.3.18 этот процесс часто приводит к тому, что записи в системной таблице v8users не синхронизируются должным образом с объектами метаданных. Мы рекомендуем избегать использования .dt при работе с тяжелыми или критически важными базами на этой версии платформы.
Попробуем выполнить следующие действия:
.bak файл для MS SQL Server).Этот метод позволяет сохранить физическую структуру таблиц пользователей «как есть», минуя механизмы преобразования платформы, которые могут давать сбой при загрузке из .dt.
Разберем ситуацию, когда обновление или реструктуризация базы завершились некорректно, хотя видимых ошибок не было. Платформа может пометить базу как находящуюся в процессе изменения. Для проверки этого состояния мы можем воспользоваться прямым запросом к базе данных через SQL Management Studio.
Выполним следующий запрос:
select status from SchemaStorage where SchemaID = 0
Проанализируем полученный результат:
Предприятие будет блокироваться системой.Если вы столкнулись со статусом 200, можно попытаться вернуть его в значение 100 вручную (только после создания бэкапа!), однако правильнее будет провести полное Тестирование и исправление с включенными опциями проверки логической и ссылочной целостности.
Если база загружена, но авторизация все равно не проходит, попробуем радикальный метод — очистку списка пользователей. Это позволит войти в базу без пароля и заново создать необходимые учетные записи. Внимание: данный метод удалит всех пользователей информационной базы, поэтому предварительно убедитесь, что у вас есть список их прав.
Для очистки таблицы пользователей в MS SQL выполните команду:
DELETE FROM v8users
DELETE FROM Params WHERE FileName = 'users.usr'
После выполнения этих команд база станет «пустой» в плане авторизации. Вы сможете зайти в Конфигуратор без пароля, зайти в список пользователей и создать администратора заново. Платформа принудительно создаст новые записи в SQL-таблицах с корректными хэшами.
Проанализируем версию платформы, указанную в проблеме — 8.3.18.1289. В этом релизе действительно наблюдались ошибки аутентификации. Одним из самых простых и эффективных способов решения является обновление платформы до более стабильного релиза, например, 8.3.18.1334 или выше. Разработчики 1С выпустили исправления, которые касаются именно механизмов работы со списком пользователей при миграции данных.
Рассмотрим порядок действий:
1C:Enterprise 8.3 Server Agent.Предприятие. Часто одна только смена релиза на более свежий решает проблему «неверной авторизации» без манипуляций с данными.Выясним еще одну возможную причину. При создании новой базы на сервере 1С под управлением Windows, система создает каталог в папке srvinfo (обычно это reg_1541). Если у пользователя, под которым запущена служба 1С (например, usr1cv8), нет прав на запись/чтение в эту новую папку, то при попытке авторизации платформа не сможет создать временный файл сеанса и выдаст общую ошибку авторизации.
Проверим следующее:
usr1cv8 установлены полные права на все вложенные папки и файлы.rphost.exe, которые отвечают за сеансы пользователей.Если проблема сохраняется для конкретных пользователей, попробуйте зайти в Конфигуратор, открыть карточку пользователя, полностью очистить поле пароля, сохранить изменения, а затем снова открыть карточку и задать пароль заново. Это инициирует процедуру перезаписи хэша пароля в базе данных по текущим алгоритмам платформы, что часто помогает после миграции базы между разными версиями 1С:Предприятие.