2010-04-15 2 views
0

로컬 PC의 SQL Server 에이전트 작업에서 SSIS 2005 패키지를 실행하려고합니다. 이 패키지는 원격 서버의 SQL Server 2005 데이터베이스에 연결하려고 시도하지만 오류 메시지 인 Login failed for user 'NT AUTHORITY\ANONYMOUS LOGON'이 표시됩니다. 문제점은 무엇이며 어떻게 해결할 수 있습니까?원격 서버의 데이터베이스에 연결중인 로컬 PC의 SQL Server 에이전트에서 실행중인 SSIS 2005에서 오류가 발생합니다.

답변

0

문제는 SSIS 패키지가 SQL Server 에이전트 서비스 (로컬 PC의 "로컬 시스템"또는 "네트워크 서비스"계정 일 수 있음)를 실행하는 계정의 NT 자격 증명 하에서 실행되고 있으며 Windows 통합 보안을 사용하여 원격 SQL 인스턴스에 연결합니다. 원격 SQL 서버가 연결이 허용 된대로 서비스 계정을 인증 할 수 없기 때문에이 작업은 실패합니다.

패키지를 개발할 때 패키지는 NT 자격 증명 (원격 SQL 서버가 인증 할 수있는 도메인 계정)을 사용하여 원격 SQL 서버에 연결하고있었습니다.

가장 빠른 해결 방법은 SQL Server 에이전트 서비스가 실행되는 서비스 계정을 원격 SQL 서버에 연결할 수있는 권한이있는 도메인 계정으로 변경하는 것입니다. 이것이 장기적인 해결책은 아니지만 이것이 자신의 도메인 계정을 사용할 수 있다는 것을 증명하기 위해.

+0

감사합니다. 이것은 DBA가 방금 나에게하던 말입니다. 장기적인 해결책은 무엇입니까? – user317178

+0

@ user317178 - 장기간에 걸친 해결책은 SQL 에이전트 서비스가 실행되도록 특별히 생성 된 NT 계정을 얻는 것입니다.이 NT 계정은 실제로 작업을 실행하는 데 필요한 리소스에만 권한을 부여 할 수 있습니다. 작업이 프로덕션 시스템으로 넘어 가지 않으면 걱정할 필요가 없습니다. –

-1

위의 경우 실패 할 경우 고려해야 할 또 다른 사항은 "홉 수"입니다. 다른 원격 DB에 연결하려고하는 원격 DB에 연결된 로컬 컴퓨터에서 SP를 실행하려고하면 위의 오류가 발생합니다. 그러나 원격으로 주 서버에 먼저 연결 한 다음 원격 연결로 SP를 실행하면 정상적으로 작동합니다.

+0

"홉 수"는 일반적으로 네트워킹과 관련하여 언급되므로 여기서는 잘못 사용되었습니다. 대신 Pass-Through 인증의 필요성에 대해 효과적으로 이야기하고 있습니다. 명시 적 신임장을 사용하여 소스 및 대상 서비스 모두에서 인증을 설정하여 문제점을 해결할 수 있습니다. 이 오류는 소스 및 대상 컴퓨터가 본질적으로 서로를 신뢰하지 못하기 때문에 발생합니다. 노골적인 자격 증명으로 문제가 해결됩니다. – Lizz

1

start_execution 명령을 실행하기 위해 SQL 작업을 만들면 프로세스가 해당 작업을 실행하는 사용자로 실행됩니다.

접근법은 here으로 설명됩니다.

+0

[링크 전용 답변은 권장되지 않습니다.] (http://meta.stackoverflow.com/tags/link-only-answers/info), SO 답변은 솔루션 검색의 종점이어야합니다 (시간이 지남에 따라 부실 해지는 경향이있는 참조의 또 다른 중간 기착). 링크를 참조 용으로 유지하면서 독립형 시놉시스를 여기에 추가하는 것을 고려해보십시오. – kleopatra

관련 문제