Ошибки аутентификации ODBC для SQL Server


6

Я пытаюсь подключиться к базе данных SQL Server 2008 из стороннего приложения через соединение ODBC. Я имею успех, когда ODBC настроен с проверкой подлинности Windows, но не когда он настроен с проверкой подлинности SQL Server.

Мой общий процесс

  • Создать 64-разрядный системный ODBC DSN ("C: \ Windows \ SysWOW64 \ odbcad32.exe")
  • Когда я создаю DSN, я проверяю соединение в конце, и все выглядит хорошо. И я могу проверить это в SQL Server, используя

Вход в систему успешно выполнен для пользователя 'myuser'. Соединение установлено с использованием SQL Server   аутентификация. [КЛИЕНТ: 10.85.43.91]

  • Затем я иду в свое приложение, ссылаюсь на этот DSN и пытаюсь войти в систему. Я получаю сообщение об ошибке Unable to connect to general Datasource. Connect String: DSN=<DSN Name> Error: login failed for user '', Затем я возвращаюсь в журнал ошибок SQL и вижу

Не удалось войти в систему для пользователя 'myuser'. Причина: пароль не совпадает с тем, который указан при входе в систему. [КЛИЕНТ: 10.85.43.91]

а также

Не удалось войти в систему для пользователя ''. Причина: попытка входа с использованием проверки подлинности SQL не удалась. Сервер настроен только для аутентификации Windows. [КЛИЕНТ: 10.85.43.91]

Я могу подключиться к SQL через SSMS с этим именем пользователя и выполнять запросы.

Я также могу проверить, что Authentication mode is MIXED. из строк журнала при запуске сервера. Та же проверка через обозреватель объектов & gt; Свойства сервера & gt; Безопасность & gt; SQL Server и режим аутентификации Windows.

Мы запустили сервер вчера вечером, просто чтобы убедиться, что все эти настройки верны.

Это происходит при попытке подключения как минимум с 4 компьютеров.

Что дает? Что мне не хватает? Почему я не могу подключиться к SQL с проверкой подлинности SQL через ODBC?


Как вы передаете учетные данные в драйвер ODBC? Также вы уверены, что ваша программа использует 64-битный драйвер?
Scott Chamberlain

Также я думаю, что вы можете получить лучшие ответы по переполнению стека, я проголосовал за переезд.
Scott Chamberlain

Я задаю имя пользователя и пароль SQL Server для DSN, когда я настраиваю его через Windows, а затем в приложении, которое я просто выбрал, чтобы использовать его. Я уверен, что программа использует 64-битный драйвер. Программа также имеет возможность создавать уведомления о доставке изнутри (она открывает инструмент Windows) и создает 64-разрядные уведомления о доставке. Кроме того, если я создаю 32-разрядный системный DSN, он не отображается в списке доступных подключений.
Brad

@ ScottChamberlain Я написал все это на SO, потом подумал, что здесь будет лучше :) Наверное, я ошибался.
Brad

3
Вопросы о администрирование базы данных здесь не по теме, но можно спросить на База данных администраторов стека Exchange ,
bwDraco

Ответы:


-1

[ODBC] DRIVER = собственный сервер SQL Server 10.0 UID = Drazen ЯЗЫК = твой родной DATABASE = name_db WSID = имя сервера Приложение = Microsoft Office 2010 Trusted_Connection = Да SERVER = (локальный) Описание = описать

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.