SQL Server 2008: имя входа из ненадежного домена и не может использоваться с проверкой подлинности Windows

8

Вопрос здесь отличается от 1 и 2

При попытке подключиться к базе данных SQL Server, которая находится в другой системе в сети, оба находятся в рабочей группе, при попытке подключиться к экземпляру SQL Server 2008 с помощью SQL Server Management Studio с проверкой подлинности Windows, я подключаюсь.

Но при попытке подключения из моего приложения я получаю следующую ошибку

(Ошибка входа в систему. Логин из ненадежного домена и не может использоваться с аутентификацией Windows.) Native = 18452).

Если SQL Server Management Studio сможет подключиться, что потребуется для подключения моего приложения?

Сообщество
источник
Это сработало после того, как я использовал ту же учетную запись, что и на сервере mssql.

Ответы:

4

Поскольку вы работаете в рабочей группе, единственная возможная аутентификация - это аутентификация с использованием «зеркальных учетных записей NT» , что означает, что процесс, пытающийся аутентифицироваться, должен выполняться под идентификатором, который «зеркально отображен» на хосте, который аутентифицирует процесс. «Зеркальные» учетные записи - это отдельные локальные учетные записи с одинаковыми именем и паролем на обоих хостах, выполняющих аутентификацию.

Так должно следовать , что вы работаете SSMS со счета , что является зеркальным на хосте SQL Server (например. <computername>\Administrator, Который отражается <sqlhost>\Administratorи имеет один и тот же пароль). Обратите внимание, что UAC здесь не имеет никакого отношения (т.е. running as administratorне поможет).

Возможно, ваше приложение выполняется под другой локальной учетной записью (возможно, по умолчанию IIS appool?), А учетная запись, под которой запускается приложение, не отражается на хосте SQL Server.

Лучшее решение - отказаться от временной сети и развернуть правильный AD (домен). Как промежуточный, убедитесь , что вы запускаете приложение под учетной записью , которая является зеркальной на таял машины хоста SQL Server.

Ремус Русану
источник
Да, аутентификация должна быть зеркальной! Мое приложение, которое является службой, работало под другой учетной записью Windows (x), чем в SQL Server Management Studio. Эта учетная запись Windows (x) также присутствует в другой системе, но у обоих были разные пароли !!!!!!! Я сделал пароль одинаковым в обеих системах, и он работал. Спасибо большое !!
5

Если вы используете Windows 7, вам может потребоваться «работать от имени администратора». Это позволит приложению повторно использовать ваши учетные данные Windows и передавать их на SQL Server. В противном случае вы передадите учетные данные гостя на SQL Server.

tgolisch
источник
3
Вряд ли. UAC влияет только на локальные взаимодействия. Это не влияет на аутентификацию на удаленном хосте.
Ремус Русану