IIS에서 실행중인 .NET 3.5 웹 서비스 (은가 아님)가 있습니다. 타사 소프트웨어를 인증하려면 identity impersonate="true"
및 Windows 통합 인증을 사용해야합니다. 또한 ADO.NET 및 SQL Server 인증 (연결 문자열에 고정 된 사용자 ID 및 암호 지정)을 사용하여 SQL Server 데이터베이스에 연결합니다.IIS에서 Windows 통합 인증으로 인해 ADO.NET 오류가 발생했습니다.
A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)
이 : 데이터베이스가 SQL 서버 B (. 어느 웹 서버와 동일) 그리고 웹 서비스는 다음과 같은 예외를 슬로우로 SQL 서버 A에서 이동 될 때까지
다 괜찮 았는데 오류 은 Web.config에서 ID 가장 (impersonate)가 true 인 경우 발생합니다.
다시 연결 문자열은 변경되지 않고 사용자를 지정합니다. 연결 문자열을 테스트 한 결과, 가장 된 계정과 서비스 계정 (및 원격 시스템과 서버 모두)에서 모두 작동합니다.
가장을 사용하려면이 변경 사항을 변경해야합니까?
편집 :
레무스 Rusanu 올바른 방향으로 우리를 지적했다. 그것은 Kerberos로 내려갔습니다 - SPN은 새 서버로 설정되지 않았습니다. asp.net via kerberos integrated windows authentication to sql server을 참조하십시오. 고맙습니다!
"tcp :"를 추가하면 "(공급자 : TCP 공급자, 오류 : 0 - 대상 컴퓨터가 적극적으로 거부했기 때문에 연결할 수 없습니다.)"로컬 컴퓨터에서이 작업을 시도해 볼 수 있습니다. 나는 "tcp :"를 없앤다. – TrueWill
서버가 TCP를 수신 대기하도록 구성되지 않았거나 기본 포트에서 수신 대기하지 않습니다. –