2009-12-23 2 views
5

WCF에서 서비스를 구현 중이며 사용자 이름/암호를 사용하여 사용자 지정 사용자 인증이 필요합니다. 이 서비스는 웹 스크립트 (JSON) 서비스로 구성됩니다.WCF/JSON으로 사용자를 인증하고 추적하는 방법은 무엇입니까?

보안 컨텍스트를 얻을 수 있는지 알고 싶습니다. 따라서 모든 호출에 해시 또는 사용자/통과를 포함 할 필요가 없습니다. 나는 이것을 위해 인증서를 사용할 수 있다는 것을 알고 있지만 인증을위한 사용/통과 메커니즘이 필요합니다.

저는 AJAX (jQuery)를 사용하여이 서비스에 대해 이야기 할 것이며 기본 HTTP 인증을 사용할 수 있어야합니다.

이 서비스는 나중에 TCP를 통해 다른 끝점을 노출하며 "적절한"인증을 지원합니다.

WCF에서 보안을 유지하는 데는 여러 가지 방법이 있습니다. 나는 잃어버린 느낌이 들며, 내가 아는 것이 적을수록 더 많이 읽는 것처럼 느낍니다.

답변

3

여기에 jQuery (HTTP 전송을 전제로 함)을 사용한다고 가정하면 먼저이 엔드 포인트에 대한 구성표가 HTTPS인지 확인해야합니다. 그것이 아니라면, 당신은 중간자 공격의 대상이되므로 많은 어려움을 겪을 것입니다. 당신이 HTTPS를 사용하는 경우

http://blogs.msdn.com/pedram/archive/2007/10/05/wcf-authentication-custom-username-and-password-validator.aspx

가, 다음 메시지 대신에 전송하는 보안 모드를 설정 할 수 있어야한다 :

이 블로그 항목은 사용자 정의 사용자 이름/암호 유효성 검사기를 만드는 방법에 대해 이동하는 방법을 보여줍니다 그리고 일해야합니다.

이 서비스에서는 매번 사용자와 암호를 전달하지 않으려는 경우 백엔드에서 세션 기반 서비스가 필요하므로 쿠키를 사용해야합니다. 하지만 바인딩에서 처리됩니다).

3

HTTPS를 사용하는 것 외에도 WCF를 사용하여 REST 서비스를 작성하는 경우 this article을 살펴 보는 것이 좋습니다. 좋은 아이디어가있는 HMAC 사용에 관한 섹션이 있습니다. 시나리오에 따라 인증을 다른 공급자 (OpenId 구현 자)에게만 오프로드하고 사이드 암호에 대한 프로필 만 유지할 수도 있습니다.

관련 문제