1

Windows 인증을 사용하는 인트라넷 환경에서 실행되는 wcf 서비스를 만들고 있습니다. 로컬 컴퓨터에서 일종의 기본 설정과 함께 즐겁게 작업 해 왔습니다.WCF는 사용자 이름 암호로 WindowsAuthentication을 수행 할 수 있습니까?

이제 문제는 오프 사이트 데모 컴퓨터에 설치했는지 테스트해야한다는 것입니다. 난 그냥 wcf 서비스 컴퓨터의 사용자 계정에 대해 사용되는 사용자 이름 암호로 실행해야합니다.

이 내 클라이언트 코드 :이 기계의에

using (ImportServiceClient client = new ImportServiceClient("ImportServiceSoap12", REMOTE_ADDRESS)) 
{ 
    client.ClientCredentials.Windows.AllowNtlm = true; 
    client.ClientCredentials.Windows.ClientCredential = 
     new NetworkCredential(userName, password, computerName); 

    result = client.Sync(items.ToArray()); 
} 

그것은 윈도우에 자격 증명을 변환하도록 WCF 서비스를 구성 할 수 있습니다 계정?

나는 모순 된 게시물을 여기저기서 읽고 있었지만 IIS가 인증에 포함되어서는 안된다고 생각합니다. ASP.Net 인증 노드가 적용되는지 또는 모든 바인딩 구성인지는 확실하지 않습니다.

내가 NTLM 형식의 인증을 받아서 https를 설정할 필요가 없다는 것이 이상적입니다.

답변

3

인증 정보를 시스템의 Windows 계정으로 변환하도록 wcf 서비스를 구성 할 수 있습니까?

아니요 Windows 통합 인증을 사용하려면 서버와 클라이언트가 모두 동일한 도메인 (또는 어떤 경우 든 트러스트 관계가있는 도메인)에 속해야합니다. 서버의 로컬 컴퓨터 계정에 대해 IWA를 유용하게 실행할 수는 없습니다.

다른 인증 형식을 사용하고 서버 코드에서 실행하려는 사용자로 가장해야합니다.

+0

당신이 말하는 것은 의미가 있지만 어떻게이 게시물을 해석해야합니까? http://devdump.wordpress.com/2009/04/29/wcf-windows-authentication-and-external-users/ –

+0

명확하지 않지만 기본 인증에서 사용자 이름/암호를 가져올 것으로 예상됩니다. 직접 확인하고 필요한 경우 가장하는 것이 좋습니다 (잘하면 안됨). – bobince

+0

당신의 대답은 너무 분명해서 저를 행복하게 만듭니다. 나는 정말로 이것을 알고 있었음에 틀림 없다. 그러나 나는 분명히 그렇게하지 않았다. 고맙습니다! –

관련 문제