양식 인증 및 SqlMembershipProvider/SqlProfileProvider/SqlRoleProvider를 사용하는 관련 웹 응용 프로그램에 대한 인증 (사용자 이름/암호 로그온)을 허용하기 위해 클라이언트 응용 프로그램 서비스를 사용하는 WPF 응용 프로그램이 있습니다. 이 모든 작업과 나는 사용자/암호 조합을 신뢰성있게 검증 할 수 있습니다.ASP.NET 클라이언트 응용 프로그램 서비스 인증 및 WCF
또한 WPF 응용 프로그램은 CAS 인증에 사용되는 것과 동일한 웹 응용 프로그램에서 제공하는 여러 WCF 서비스를 호출합니다. 이제는 클라이언트 응용 프로그램 서비스의 인증 세부 정보를 WCF 서비스로 전달하여 해당 서비스 내에서 인증 된 사용자를 식별 할 수있게하려고합니다. 또한 인증이 수행되지 않으면 WCF 서비스가 사용되는 것을 방지 할 수 있어야합니다.
CAS 인증이 .asmx 웹 서비스에 사용되는 곳에서 몇 가지 .NET 3.5 예제가 발견되었거나 ClientBase를 사용하지 않고 인증 기능이 내장 된 WCF Data Services에 대한 인증이 제공되지만 찾을 수 없습니다. 순수한 WCF 예제. 아무도이 시나리오를 가능하게하는 지침으로 나를 가리킬 수 있습니까? 이 프로젝트에 .NET 4.0을 사용하고 있습니다.
나는 또한 this stackoverflow question을 발견했으나 이것은 .asmx 웹 서비스와 WCF가 아닌 대답을 제공합니다.
내가 찍었을 가장 가까운
는OperationContextScope
다음은
HttpRequestMessageProperty
에
ClientFormsIdentity
개체에서 쿠키 헤더를 복사하고 현재
OperationContext
의
OutgoingMessageProperties
이 추가의 작성을 포함한다. 그런 다음
OperationContextScope
의 수명 기간 내에 하나 이상의 서비스 방법을 호출합니다. 문제는 WCF 서비스에 도착했을 때 원래 사용자를 식별 할 수있는 방식으로 인증과 비슷한 내용을 볼 수 없다는 것입니다. 이 방법론은 여러 가지 예에서 사용되었지만 WCF 끝 부분에서 분명히 한 단계 빠져 있습니다.
귀하의 애플리케이션과 서비스간에 인증 쿠키를 공유하고 싶습니다. 그들이 도움이되는지 확인하려면이 두 가지를 확인하십시오. http://stackoverflow.com/questions/1087271/passing-formsauthentication-cookie-to-a-wcf-service http://www.codeproject.com/Articles/190806/Send-Cookies-When-Making-WCF-Service -Calls – Evan
http://stackoverflow.com/questions/1087271/passing-formsauthentication-cookie-to-a-wcf-service 도움이되지 않는 경우 WCF 서비스 내의 breakpont는 HttpContext.Current.User.Identity 개체가 있음을 보여줍니다. 해당 개체의 세부 정보는 비어 있습니다. –
피들러 2를 사용하면 내 쿠키가 요청에 첨부되지 않은 것 같습니다. –