2009-04-01 3 views
1

수 있도록 로그온 한 사용자의 Windows 자격 증명 또는 사용자 이름/암호 조합.WCF는 - WCF 서비스가 중 하나 으로 호출 할 수있는 시나리오를 가능하게하는 데 필요한 중요한 구성 점은 무엇 Windows 및 사용자 이름 인증

나는 그 (것)들을 설치하는 방법을 알고있다, 그러나 나가 모르는 무엇이 나는 사용자 이름/암호 종점의 사용법을 강제 할 수있는 방법이다.

특정 끝점을 지정한 다음 ClientCredentials.UserName.UserName 및 .Password를 설정할 수있는 생성자를 사용하면됩니까?

감사합니다.

답변

0

, 당신 말이 맞아, 그것은 그대로 생성자에서 구성 이름을 지정하고 uname/pwd를 클라이언트에 제공하는 것으로 간단합니다.

0

엔드 포인트에서 바인딩을 변경하기 만하면됩니다.

<wsHttpBinding> 
    <binding name="WSHttpUserName"> 
    <security> 
     <transport clientCredentialType="None" /> 
     <message clientCredentialType="UserName" /> 
    </security> 
    </binding> 
</wsHttpBinding> 

이제 당신은 당신이 다른

"윈도우"의 clientCredentialType에 바인딩 또는 메시지를 전송에 넣어 수 없습니다와 함께, 또 다른 엔드 포인트가 필요합니다 자동 Windows 인증을 원하지만, 경우 어쨌든 사용자 이름 인증에 SSL이 필요할 것입니다.

0

서비스에 대한 바인딩 구성에 보안 섹션이 있습니다. 어떤 보안 모드 (None/Transport/Message/TransportWithMessageCredential)를 사용할 것인지 선택할 수 있으며, 보안 모드 (사용자 이름/Windows/인증서 등)와 같은 보안 설정을 사용자 정의 할 수 있습니다. 그런 다음 클라이언트 측에서 어떤 유형의 보안 모드를 사용하고 어떤 종류의 ID를 사용할지 설정하는 위치에 따라 바인딩을 구성해야합니다. 코드 또는 구성 파일을 사용하여 동등하게 구성 할 수 있습니다.

MS Patterns & 사례에 대한 매우 훌륭한 WCF 보안 지침이 있습니다. http://www.codeplex.com/WCFSecurityGuide

그것은 특정 시나리오에 대한 HoTos 많이 있습니다 여기에 링크입니다. 당신이 윈폼에서 Windows 인증 및 메시지 보안에 netTcpBinding을 구성하는 방법에 대한 예를 여기의 연습을 위해 : 너무 오래 구성 클라이언트 엔드 포인트 설정에 존재하고와 관계있는 인증 방법에 대해 구성된으로 http://wcfsecurityguide.codeplex.com/Wiki/View.aspx?title=How%20To%20-%20Use%20netTcpBinding%20with%20Windows%20Authentication%20and%20Message%20Security%20in%20WCF%20from%20Windows%20Forms