이 항목은 Windows Workflow Foundation 4에 적용됩니다.
보안 워크플로 서비스 샘플에서는 다음 절차를 보여 줍니다.
WCF(Windows Communication Foundation) 구성을 사용하여 워크플로 서비스에서 사용할 보안 끝점 정의
사용자 지정 정책 내부에 클레임을 만들고 ServiceAuthorizationManager를 사용하여 클레임의 유효성 검사
데모
WCF 보안(클레임 기반 권한 부여)을 사용하여 클라이언트와 워크플로 서비스 간 통신에 보안 설정
추가 설명
이 샘플에서는 WCF 보안 인프라를 사용하여 일반 WCF 서비스에서와 동일하게 워크플로 서비스에 보안을 설정하는 방법을 보여 줍니다. 특히 여기에서는 권한 부여에 사용자 지정 클레임을 사용합니다. 이 경우 Windows 자격 증명에 WSHttpBinding 및 메시지 모드 보안을 사용합니다.
사용자 지정 IAuthorizationPolicy(CustomNameCheckerPolicy
)는 클라이언트의 Windows 사용자 이름에 특정 문자가 있는지 확인합니다. 해당 문자가 있으면 클레임을 만들어 EvaluationContext에 추가합니다. 이렇게 하여 사용자 지정 정책이 클라이언트의 사용자 이름에 이 문자가 있음을 나타내는 문을 만듭니다. 호출의 수명 주기 전체에 걸쳐 이 클레임을 쿼리할 수 있습니다. Constants.cs
에서 해당 문자를 찾을 수 있습니다.
권한 부여 정책은 SecureWorkFlowAuthZManager
내부에서 클레임을 찾습니다. 클레임을 찾으면 true를 반환하고 워크플로가 계속되도록 합니다. 그렇지 않으면 false를 반환합니다. 그러면 클라이언트에 '액세스 거부' 메시지가 반환됩니다. 다른 클레임은 컨텍스트에 있으며 이 클레임도 SecureWorkFlowAuthZManager
내부에서 검사할 수 있습니다.
이 샘플을 실행하려면
관리자 권한으로 Visual Studio 2010을 실행합니다.
Visual Studio 2010에서 SecuringWorkflowServices.sln을 로드합니다.
F6 키를 눌러 솔루션을 컴파일합니다.
서비스 프로젝트를 솔루션의 시작 프로젝트로 설정합니다.
Ctrl+F5를 눌러 디버깅 없이 서비스를 시작합니다.
클라이언트 프로젝트를 솔루션의 시작 프로젝트로 설정합니다.
Ctrl+F5를 눌러 디버깅 없이 클라이언트를 시작합니다.
![]() |
---|
컴퓨터에 이 샘플이 이미 설치되어 있을 수도 있습니다. 계속하기 전에 다음(기본) 디렉터리를 확인하십시오.
<InstallDrive>:\WF_WCF_Samples
이 디렉터리가 없으면 Windows Communication Foundation (WCF) and Windows Workflow Foundation (WF) Samples for .NET Framework 4로 이동하여 WCF(Windows Communication Foundation) 및 WF 샘플을 모두 다운로드하십시오. 이 샘플은 다음 디렉터리에 있습니다.
<InstallDrive>:\WF_WCF_Samples\WF\Scenario\Services\SecuringWorkflowServices
|