현재 SQL 데이터베이스 (Linq2SQL을 통해)에 액세스하려는 WCF 서비스가 있지만 실제 IIS 환경의 신뢰할 수있는 보안이 사용하지 않는 것 같습니다. 오른쪽 자격 증명 - 나는 여기에 관련된 게시물을 따라하려고했지만 꽤 그것을 얻을 수없는 것. 누군가가 내 실수 ...WCF 및 IIS의 Windows 인증을 사용하여 데이터베이스에 액세스
엔드 포인트의 설정에 자리 수 있다면 정말 감사하게 될 거라고, 나는 나가를 설정 한
<basicHttpBinding>
<binding name="authHttpBinding">
<security mode="TransportCredentialOnly">
<transport clientCredentialType="Windows"/>
</security>
</binding>
</basicHttpBinding>
다음과 같은 구성으로,은 BasicHttpBinding을 사용하도록 설정 한 system.web 설정하려면 : IIS 서버에서
<authentication mode="Windows" />
<identity impersonate="true" />
, 나는 새로운 AppPool을 추가 한 통합에 ApplicationPoolIdentity와 ManagedPipeLine에 ID를 설정합니다. 실제 웹 응용 프로그램에서 내 새 AppPool로 설정하고 Windows 인증을 "사용"으로 설정하고 ASP.Net 가장을 사용하거나 사용하지 않도록 설정했습니다.
WCF 서비스를 호출하면 실행되지만 Linq2SQL (신뢰할 수있는 보안을 사용하는 원격 서버의 데이터베이스)을 통해 저장된 proc을 실제로 호출하면 다음 오류가 발생합니다. 사용자 '도메인에 대한 로그인이 실패했습니다. \ machinename $'- 시스템 이름 끝 부분에 달러 기호가 있습니다.
정확한 신원을 위임하지 못한 것처럼 보입니다. Management Studio를 통해 실제 데이터베이스에 액세스 할 수 있습니다.
같은 문제. 어떻게 해결했는지 기억한다면 알려주세요. – morpheus