При переносе файловой базы данных на SQL-сервер администраторы часто сталкиваются с тем, что консоль администрирования сервера 1С не может подключиться к СУБД. Одной из самых частых ошибок является Hresult=80040E4D, SQLSTATE = 28000 с кодом 18456. Эта ошибка прямо указывает на то, что сервер SQL отвергает попытку входа пользователя. Давайте разберем, как правильно настроить права и избежать подобных проблем.
Ошибка 18456 в MS SQL Server означает, что попытка аутентификации пользователя не удалась. В контексте взаимодействия 1С и SQL чаще всего это происходит из-за того, что учетная запись, указанная в консоли 1С, не имеет прав на создание баз данных в экземпляре SQL или вообще не добавлена в список логинов сервера.
Рассмотрим процесс настройки прав доступа, чтобы сервер 1С мог успешно взаимодействовать с SQL-сервером. Работу следует проводить в SQL Server Management Studio.
Security -> Logins вашего сервера SQL. Убедитесь, что пользователь, которого вы указываете в консоли кластера 1С, добавлен в этот список. Если его нет — создайте нового пользователя и установите для него пароль.dbcreator. Для этого в свойствах логина перейдите на вкладку Server Roles и установите флажок напротив dbcreator. Также убедитесь, что роль public назначена (она часто присваивается автоматически).sa в целях безопасности).Если по какой-то причине консоль администрирования продолжает выдавать ошибку, можно воспользоваться альтернативным методом:
SQL Server Management Studio.Конфигуратор.Загрузить информационную базу, чтобы развернуть файл дампа .dt в новую клиент-серверную структуру.Важно различать пользователя USR1CV8 (от имени которого запущена служба сервера 1С в ОС Windows) и пользователя SQL-логина, которого мы прописываем в параметрах базы 1С. Служба сервера должна иметь полные права на каталог базы данных в файловой системе, в то время как SQL-логин управляет объектами внутри самой базы данных.
Помните: Использование учетной записи sa — это путь наименьшего сопротивления, который несет в себе риски безопасности. Мы рекомендуем всегда создавать отдельных пользователей с минимально необходимым набором прав. После того как база успешно создана, роль dbcreator пользователю 1С, по сути, больше не нужна для повседневной эксплуатации, однако для обновления конфигураций могут потребоваться права на изменение схемы данных.
Анализируя ситуацию, мы видим, что ключ к успеху — это корректное добавление учетной записи в Logins сервера SQL и предоставление ей роли dbcreator. Проверьте также, включен ли смешанный режим проверки подлинности (SQL Server and Windows Authentication mode) в настройках самого сервера SQL, так как без него SQL-авторизация может быть недоступна.