2014-10-31 4 views
4

연결된 서버를 특정 사용자로 사용하는 쿼리를 실행하고 싶습니다. 그러나 간단한 예제조차도 작동하지 않습니다.다른 사용자로 연결된 서버에 쿼리 실행

나는 사용자 "도메인 \ 사용자"로, 다음 코드를 "ServerA에"및 실행에 연결 SSMS opem 경우 :

EXECUTE ('SELECT col FROM serverB.dbB.dbo.table') 

잘 작동합니다. 나는했습니다

Linked servers cannot be used under impersonation without a mapping for the impersonated login.

:

EXECUTE ('SELECT col FROM serverB.dbB.dbo.table') AS LOGIN = 'domain\user' 

그것은 오류 다음과 같은 예외 : 나는 opem 때

그러나, SSMS 사용자 "도메인 \ admin"으로,이 "ServerA에"및 실행에 다음 코드를 연결 많이 봤지만 어떤 해결책도 찾지 못했습니다. 문제가있는 곳을 아는 사람이 있습니까?

답변

2

creating a linked server 때 원격 사용자 이름과 암호를 입력하고 로컬 사용자를 원격 데이터베이스에 매핑 할 수 있습니다.

그러나이 기술을 사용하여 도메인 계정에 매핑 할 수는 없지만 사용자와 암호는 SQL 서버 인증을 사용합니다.

+0

yor 응답에 감사하는 webturner. 필자는 사용자 매핑 가능성과 실제로 SQL 사용자 만 매핑 할 수 있다는 사실을 알고 있습니다. 다른 도메인 사용자로 연결된 서버에서 명령을 실행하는 방법이 없습니까? – dpelisek

+1

SQL 서버가 아니라 C#에서 가장을 사용하는 것이 가능합니다. http://stackoverflow.com/questions/2822449/connect-to-domain-sql-server-2005-from-non-domain-machine/4736493#4736493 –

관련 문제