2010-07-28 5 views
0

ASP.Net 호스팅 WCF 4.0 서비스를 제대로 구성하는 방법에 대한 간단한 설명을 통해 서비스의 특정 메서드에 대해서만 호출자의 자격 증명을 가장 할 수 있지만 익명으로 허용 할 수 있습니까? 다른 방법에 대한 액세스?WCF 클라이언트 가장

MSDN에서이 내용을 많이 읽었지만 읽을수록 혼란 스럽습니다. 어쩌면 나는 단조롭다. 그러나 이것은해야 할 것보다 훨씬 더 어려워 보인다. -

나는 여기 SE에서 게시물을 살펴 봤지만 아무도 end-to-end 샘플 또는 튜토리얼을 가리 키지 않는 것 같다. .이 코드 플렉스에 WCF 안내 문서이지만, 희망 오래된 것, 그리고 2008 년

여기에 어떤 도움을 크게 감상 할 수 있기 때문에 업데이트되지 않았습니다.

답변

1

이것은 OperationBehaviorAttribute.Impersonation를 통해 수행 할 수 있습니다 속성

[ServiceContract] 
interface ISelectiveImpersonationExample 
{ 
    [OperationContract] 
    void ThisUsesImpersonation(); 

    [OperationContract] 
    void ThisDoesNotUseImpersonation(); 
} 


// Implementation 
class SelectiveImpersonationExampleImpl : ISelectiveImpersonationExample 
{ 
    [OperationBehavior(Impersonation=ImpersonationOption.Required)] 
    public void ThisUsesImpersonation() 
    { 
     // ... 
    } 

    [OperationBehavior(Impersonation=ImpersonationOption.NotAllowed)] 
    public void ThisDoesNotUseImpersonation() 
    { 
     // ... 
    } 
} 

서비스 동작의 ImpersonateCallForAllOperations 값을 true로 설정하지 마십시오. 그렇게하면 이 문제가 아니며 가장 함수가 InvalidOperationException을 던집니다.

저는 여기서 이론을 세우려고하고 있으며, 실제 현실에서는하지 않았습니다. 작동하지 않으면 알려주세요.

+0

감사합니다. 시도해 보겠습니다. 내가 가장 혼란 스럽다는 사실은이 작업을 수행하기위한 적절한 구성 설정을 시도하는 것입니다. 내가 알려 주마. – camainc