편집 - 나는이 문제를 더 잘 초점을 맞추기 위해 수정했습니다. NetworkCredentials 개체를 WCF 서비스에 전달하는 중
상호 작용하는 데 필요한 구성 요소
은 다음과 같습니다 ASP.NET 웹 사이트 < -> WCF 서비스 < -> 3 자 웹 서비스제 3 자 웹 서비스는 contstruction 동안 네트워크 자격 증명을 지정을 통해 Windows 인증을 필요로 프록시의 예 :
내 지식에 따라 WCF 서비스가 사용자를 타사 웹 서비스로 가장 할 수있는 유일한 방법입니다. Windows 인증 (네트워크 자격 증명을 통해)은 유일하게 지원되는 가장 (impersonation) 수단이며 타사 웹 서비스와 WCF 서비스간에 일종의 신뢰를 설정할 수는 없습니다.
웹 사이트는 개별 사용자 계정이 아닌 서비스 계정으로 실행됩니다. 사용자가 웹 사이트에 로그인하면 ActiveDirectory를 사용하여 유효성을 검사하지만 AD를 사용하여 "유효한 이름과 암호 조합입니다."라고 말합니다.
내가 알고있는 것을 웹 사이트 (사용자 이름, 암호)에서 가져 와서 WCF 서비스의 네트워크 자격 증명으로 바꾸는 방법이 필요합니다. 내가 읽은 모두는 사용자 이름/패스워드 또는 심지어 네트워크 신임 객체 (심지어 가능하다면)를 전달하는 것은 큰 보안 위험이며 실제로 나쁜 습관이라고 말합니다.
웹 사이트가 사용자 계정으로 실행되지 않을 때 WCF 서비스에서 웹 사이트 사용자의 Windows ID를 사용 가능하게하는 데 사용할 수있는 옵션/기술에는 어떤 것이 있습니까?
어떤 통찰력에도 감사드립니다.
P. 나는이 게시물을 찾았습니다 : How do you pass user credentials from one process to another for Impersonation in .NET 1.1? 나는 내 질문을 게시하고 그 내용을 소비하고 있습니다.