WCF(Windows Communication Foundation)를 사용하면 런타임 구성 요소를 수정하고 확장하여 서비스 기반 애플리케이션을 정확하게 제어하고 확장할 수 있습니다. 이 섹션의 항목에서는 확장성 아키텍처에 대해 자세히 설명합니다. 기본 프로그래밍에 대한 자세한 내용은 기본 WCF 프로그래밍을 참조하세요.
이 섹션 안에
ServiceHost 및 서비스 모델 계층 확장
서비스 모델 계층은 들어오는 메시지를 기본 채널에서 끌어와 애플리케이션 코드의 메서드 호출로 변환하고 결과를 호출자에게 다시 보내는 작업을 담당합니다. 서비스 모델 확장은 디스패처 기능, 사용자 지정 동작, 메시지 및 매개 변수 가로채기 및 기타 확장성 기능과 관련된 실행 또는 통신 동작 및 기능을 수정하거나 구현합니다.
바인딩 확장
바인딩은 엔드포인트에 연결하는 데 필요한 통신 세부 정보를 설명하는 개체입니다. 바인딩 확장 또는 사용자 지정 바인딩은 애플리케이션 기능을 지원하는 데 필요한 사용자 지정 통신 기능을 구현합니다.
채널 계층 확장
채널 계층은 서비스 모델 계층 아래에 있으며 클라이언트와 서비스 간의 메시지 교환을 담당합니다. 채널 확장은 보안과 같은 새로운 프로토콜 기능을 구현할 수 있습니다. 또한 채널 확장은 SOAP 메시지를 전달하는 새 네트워크 전송 구현과 같은 전송 기능도 제공합니다.
보안 확장
WCF의 보안은 전송 보안(무결성, 기밀성 및 인증), 액세스 제어(권한 부여) 및 감사로 구성됩니다. 네임스페이 IdentityModel
스에 있는 클래스는 액세스 제어를 위해 WCF에서 사용됩니다. 보안 아키텍처를 이해하면 사용자 지정 액세스 제어 시스템을 수용하기 위해 사용자 지정 클레임 유형을 만들 수 있습니다.
메타데이터 시스템 확장
WCF 메타데이터 시스템은 서비스 기반 애플리케이션을 구현하는 데 필요한 메타데이터를 나타내는 클래스 및 인터페이스 그룹입니다. 클래스를 수정하거나 확장하거나 WSDL(Web Services Description Language) 확장 또는 사용자 지정 WS-PolicyAttachments 어설션과 같은 사용자 지정 메타데이터를 내보내고 가져오는 인터페이스를 구현하고 구성합니다.
인코더 및 직렬 변환기 확장
인코더 및 직렬 변환기는 데이터를 한 폼에서 다른 양식으로 변환합니다. 이 섹션의 항목에서는 특별한 요구 사항을 충족하도록 제공된 클래스를 확장하는 방법에 대해 설명합니다.
참고 문헌
System.ServiceModel.Description
System.IdentityModel.Selectors