Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft SQL Server |
![]() ![]() |
flopp Member Откуда: Сообщений: 4 |
Ситуация такая: Имеется два SQL Server(2008r2) нужно что бы из одного SQL сервера можно было в запросе залинковаться к другому(с правами на чтение определенной базы) и сделать Select к таблицам. Два сервер живут в одном домене. В данный момент схема реализована через Linked Servers, но линковка происходит посредствам SQL-аккаунта. В скором времени требования по безопасности обязуют нас полностью перейти на доменную авторизацию и следовательно SQL Server-а придется переключить с режима mixed mode в Windows Authentication mode. Проблема же состоит в том что я не могу заставить скуль авторизоваться в LinkedServers посредствам Win account. то есть допустим есть учетка SQL vasya. Я указываю ее в связанном сервере и все хорошо. Создаю учетку в домене domain\vasya. Перевожу работу скуля в Win Auth, ребутаю службу, завожу в логинах SQL учетку domain\vasya. Для чистоты эксперимента даю этому васе админские права В СУБД. скульную учетку vasya удаляю В Linked Servers --> security пишу Domain\vasya и соответствующий пароль. скуль выдает ошибку 18456. Пишет: Login failed for user 'domain\vasya'. Reason: Attempting to use an NT account name with SQL Server Authentication скрипт создания LS вот такой: EXEC master.dbo.sp_addlinkedserver @server = N'LSname', @srvproduct=N'sqlncli', @provider=N'SQLNCLI', @datasrc=N'remoteServer', @catalog=N'RemoteDB' EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'LSname',@useself=N'False',@locallogin=NULL,@rmtuser=N'domain\vasya',@rmtpassword='somePass' Судя по заявлению в логе скуль понимает что я использую NT учетку для авторизации, однако все равно пытается авторизоваться исключительно через SQL авторизацию. Через SSMS я разумеется под этим васей легко захожу с любой машины Возможно я что то не то указываю в параметрах LinkedServers но ничего явно говорящего о NT авторизации я вроде как в параметрах и не нашел… На MSDN нашел лишь банальные скудные примеры, аналогичные моим скриптам…. В которых вроде как написано что работать должны обе авторизации, но увы… не помогло. Где то на этом форуме данную тему уже поднимали, но к разрешению проблемы так и не пришли. Мне интересно что я делаю не так? Возможна ли Win авторизация в связанных серверах в принципе? И есть ли еще какие то варианты кроме Linked Servers ?(хотя у альтернатив скорее всего тоже найдутся свои недостатки…. Сами понимаете или половину кода переписывать или еще что…) Заранее спасибо за ответы! ))) |
13 окт 13, 17:50 [14963071] Ответить | Цитировать Сообщить модератору |
o-o
Guest |
чтобы использовать Win-авторизацию, надо указать значение @useself=N'True'. т.е. все ходят под своими доменными учетками. нельзя отмапить одну Win-учетку на другую. вот на неделе была уже схожая тема при указании явного логина/пароля сервер понимает, что речь об SQL Server-ном логине. для передачи одним сервером другому виндовские credentials должна быть настроена делегация, по ссылке выше см. ответ Гостя333, он давал ссылку, как ее настроить. |
13 окт 13, 18:05 [14963105] Ответить | Цитировать Сообщить модератору |
flopp Member Откуда: Сообщений: 4 |
o-o, Спасибо большое, кажется оно, буду изучать))) |
15 окт 13, 10:20 [14971080] Ответить | Цитировать Сообщить модератору |
Все форумы / Microsoft SQL Server | ![]() |