Проблема со связанным сервером Sql Server «Ошибка входа в систему для пользователя« NT AUTHORITY \ ANONYMOUS LOGON »

У меня есть пользователь домена как на связанном сервере, так и на сервере, который ссылается на связанный сервер. Тот же пользователь домена добавляется в удостоверение пула веб-приложения (asp.net). Что происходит, это приложение успешно обращается к локальной БД, и все данные поступают нормально. Но когда приложение пытается получить доступ к хранимой процедуре, которая вызывает связанный сервер, оно показывает следующую ошибку: «Ошибка входа в систему для пользователя 'NT AUTHORITY\ANONYMOUS LOGON»

Но еще более раздражает то, что это не всегда происходит сбой, если кто-то вошел в веб-приложение SSMS, может получить эти данные, но если он выйдет из системы с сервера, через некоторое время эта ошибка начнет появляться.

Он отлично работает, когда у нас есть sql server 2008 R2 на обоих серверах (связанный и один, использующий связанный сервер) и Windows 2008.

Но не работает, когда у нас есть сервер Windows 2003 и sql 2005 (база данных из этого используется связанная) и sql server 2008 на сервере Windows 2008.


person Mian    schedule 01.11.2012    source источник


Ответы (1)


Это связано с проблемой "2-хоп" с сервером SQL. Я смог решить эту проблему двумя способами: 1. Все еще используя связанные серверы: на удаленном сервере создайте пользователя с аутентификацией SQL Server и предоставьте все необходимые разрешения. Затем откройте свойства связанного сервера и сопоставьте свою учетную запись с только что созданным пользователем, например: введите здесь описание изображения

После этого вы сможете запускать свои скрипты

  1. Использование openrowset:

    SELECT a.* FROM OPENROWSET('SQLNCLI', 'Server=;Trusted_Connection=yes;', 'SELECT * from .dbo.') AS a;

person vmg    schedule 05.02.2014