다음을 통해 공유


.NET Framework 4.5용 Windows Communication Foundation 용어집

다음 용어는 Windows Communication Foundation 설명서에 대해 정의됩니다.

Terms

용어 Definition
address 메시지가 수신되는 위치를 지정합니다. URI(Uniform Resource Identifier)로 지정됩니다. URI 스키마 파트는 HTTP 및 TCP와 같은 주소에 도달하는 데 사용할 전송 메커니즘의 이름을 지정합니다. URI의 계층적 부분에는 전송 메커니즘에 따라 형식이 종속된 고유한 위치가 포함됩니다.
애플리케이션 엔드포인트 애플리케이션에서 노출하고 애플리케이션에서 구현한 서비스 계약에 해당하는 엔드포인트입니다.
행동 동작은 서비스, 엔드포인트, 특정 작업 또는 클라이언트의 다양한 런타임 측면을 제어하는 구성 요소입니다. 동작은 범위에 따라 그룹화됩니다. 일반적인 동작은 전역적으로 모든 엔드포인트에 영향을 줍니다. 서비스 동작은 서비스 관련 측면에만 영향을 줍니다. 엔드포인트 동작은 엔드포인트 관련 속성에만 영향을 줍니다. 작업 수준 동작은 특정 작업에 영향을 줍니다.
binding WCF 서비스와 통신하는 데 사용되는 통신 프로토콜을 정의합니다. 통신 인프라를 만들기 위해 한 요소를 다른 요소 위에 쌓는 바인딩 요소라는 구성 요소 집합으로 구성됩니다. 엔드포인트를 참조하세요.
채널 바인딩 요소의 구체적인 구현입니다. 바인딩은 구성을 나타내며 채널은 해당 구성과 연결된 구현입니다. 따라서 각 바인딩 요소와 연결된 채널이 있습니다. 채널 스택을 서로 위에 쌓아 바인딩의 구체적인 구현인 채널 스택을 만듭니다.
클레임 기반 보안 클레임에 따라 보호된 리소스에 대한 권한 있는 액세스를 허용합니다.
클라이언트 애플리케이션 클라이언트 애플리케이션은 하나 이상의 엔드포인트와 메시지를 교환하는 프로그램입니다. 클라이언트 애플리케이션은 WCF 클라이언트의 인스턴스를 만들고 WCF 클라이언트의 메서드를 호출하여 시작합니다. 단일 애플리케이션은 클라이언트와 서비스 모두일 수 있다는 점에 유의해야 합니다.
코딩 개발자는 서비스 또는 클라이언트의 모든 구성 요소에 대해 엄격한 제어를 유지할 수 있으며, 구성을 통해 수행된 모든 설정을 검사하고 필요한 경우 코드에서 재정의할 수 있습니다. 애플리케이션 제어는 코딩, 구성 또는 둘 다의 조합을 통해 수행할 수 있습니다.
configuration 구성은 코드를 작성한 후 다시 컴파일하지 않고도 개발자(예: 네트워크 관리자)가 아닌 다른 사용자가 클라이언트 및 서비스 매개 변수를 설정할 수 있도록 하는 이점이 있습니다. 구성을 사용하면 엔드포인트 주소와 같은 값을 설정할 수 있습니다. 또한 엔드포인트, 바인딩 및 동작을 추가할 수 있도록 하여 추가 제어를 허용합니다. 애플리케이션 제어는 구성, 코딩을 통해 또는 둘 다의 조합을 통해 수행할 수 있습니다.
계약 계약은 특정 유형의 계약에 대한 지원 사양입니다. 예를 들어 서비스 계약은 작업 그룹에 대한 사양입니다. WCF에서 계약에는 System.ServiceModel.Description 네임스페이스에 있는 설명 개체에 미러링되는 계층 구조가 있습니다. 서비스 계약은 WCF에서 가장 큰 계약 범위입니다. 서비스 계약의 각 서비스 작업에는 오류 메시지를 비롯한 메시지를 지정하는 작업 계약이 있으며, 작업은 교환할 수 있으며 어떤 방향으로든 지정할 수 있습니다. 작업의 각 메시지에는 메시지 계약, SOAP 메시지 봉투 구조에 대한 사양이 있으며 각 메시지 계약에는 메시지에 포함된 데이터 구조를 지정하는 데이터 계약이 있습니다.
데이터 계약 다른 사용자가 서비스와 상호 운용할 수 있도록 서비스가 사용하는 데이터 형식을 메타데이터에 설명해야 합니다. 데이터 형식에 대한 설명을 데이터 계약이라고 하며, 매개 변수 또는 반환 형식과 같이 메시지의 모든 부분에서 형식을 사용할 수 있습니다. 서비스에서 단순 형식만 사용하는 경우 데이터 계약을 명시적으로 사용할 필요가 없습니다.
선언적 애플리케이션 명령적 명령을 실행하지 않고 런타임에 만들 수 있을 정도로 충분히 설명된 애플리케이션입니다.
endpoint WCF 서비스와 통신하는 데 사용되는 주소, 바인딩 및 계약으로 구성됩니다.
엔드포인트 주소 서비스의 각 엔드포인트에 대해 고유한 엔드포인트 주소를 만들거나 특정 조건에서 엔드포인트 간에 주소를 공유할 수 있습니다.
오류 계약 오류 계약을 서비스 작업과 연결하여 호출자에게 반환할 수 있는 오류를 나타낼 수 있습니다. 작업에 연결된 오류가 0개 이상 있을 수 있습니다. 이러한 오류는 프로그래밍 모델에서 예외로 모델링되는 SOAP 오류입니다. 예외는 SOAP 오류로 변환된 다음 클라이언트로 보낼 수 있습니다.
호스팅 서비스는 일부 프로세스에서 호스트되어야 합니다. 호스트는 서비스의 수명을 제어하는 애플리케이션입니다. 서비스는 기존 호스팅 프로세스에서 자체 호스팅하거나 관리할 수 있습니다.
호스팅 프로세스 호스팅 프로세스는 서비스를 호스트하도록 설계된 애플리케이션입니다. 여기에는 IIS(인터넷 정보 서비스), WAS(Windows Activation Services) 및 Windows 서비스가 포함됩니다. 호스트된 이러한 시나리오에서 호스트는 서비스의 수명을 제어합니다. 예를 들어 IIS를 사용하여 서비스 어셈블리 및 구성 파일을 포함하는 가상 디렉터리를 설정할 수 있습니다. 메시지를 받으면 IIS는 서비스를 시작하고 수명을 제어합니다.
작업 시작 새 세션의 첫 번째 작업으로 호출되는 작업입니다. 시작되지 않는 작업은 하나 이상의 시작 작업이 호출된 후에만 호출할 수 있습니다.
인스턴싱 모델 서비스에는 인스턴스화 모델이 있습니다. 단일 CLR 개체가 모든 클라이언트를 서비스하는 "단일"의 세 가지 인스턴싱 모델이 있습니다. " 호출당" 각 클라이언트 호출을 처리하기 위해 새 CLR 개체가 만들어집니다. 각 개별 세션에 대해 하나씩 CLR 개체 집합이 만들어지는 "세션당" 및 인스턴싱 모델의 선택은 애플리케이션 요구 사항 및 서비스의 예상 사용 패턴에 따라 달라집니다.
message 메시지는 본문 및 헤더를 포함하여 여러 부분으로 구성될 수 있는 자체 포함된 데이터 단위입니다.
메시지 계약 메시지 계약은 메시지의 형식을 설명합니다. 예를 들어 메시지 요소가 헤더와 본문으로 이동해야 하는지 여부, 메시지의 요소에 적용해야 하는 보안 수준 등을 선언합니다.
메시지 보안 모드 메시지 보안 모드는 하나 이상의 보안 사양을 구현하여 보안을 제공하도록 지정합니다. 각 메시지에는 전송 중에 보안을 제공하고 수신기가 변조를 감지하고 메시지의 암호를 해독할 수 있도록 하는 데 필요한 메커니즘이 포함되어 있습니다. 이러한 의미에서 보안은 모든 메시지 내에 캡슐화되어 여러 홉에서 엔드투엔드 보안을 제공합니다. 보안 정보는 메시지의 일부가 되므로 메시지에 여러 종류의 자격 증명을 포함할 수도 있습니다(클레임이라고 함). 또한 이 방법은 메시지가 원본과 대상 간의 여러 전송을 포함하여 모든 전송을 통해 안전하게 이동할 수 있도록 하는 이점이 있습니다. 이 방법의 단점은 사용되는 암호화 메커니즘의 복잡성으로 인해 성능에 영향을 미친다.
metadata 서비스의 메타데이터는 외부 엔터티가 서비스와 통신하기 위해 이해해야 하는 서비스의 특성을 설명합니다. ServiceModel 메타데이터 유틸리티 도구(Svcutil.exe)에서 메타데이터를 사용하여 클라이언트 애플리케이션이 서비스와 상호 작용하는 데 사용할 수 있는 WCF 클라이언트 및 함께 제공되는 구성을 생성할 수 있습니다. 서비스에서 노출하는 메타데이터에는 서비스의 데이터 계약을 정의하는 XML 스키마 문서와 서비스의 메서드를 설명하는 WSDL 문서가 포함됩니다. 사용하도록 설정하면 서비스 및 해당 엔드포인트를 검사하여 WCF에서 서비스에 대한 메타데이터를 자동으로 생성합니다. 서비스에서 메타데이터를 게시하려면 메타데이터 동작을 명시적으로 사용하도록 설정해야 합니다.
작업 계약 작업 계약은 작업의 매개 변수 및 반환 형식을 정의합니다. 서비스 계약을 정의하는 인터페이스를 만들 때 계약의 일부인 각 메서드 정의에 T:System.ServiceModel.OperationContractAttribute 특성을 적용하여 작업 계약을 의미합니다. 작업은 단일 메시지를 가져와 단일 메시지를 반환하거나 형식 집합을 가져와 형식을 반환하는 것으로 모델링할 수 있습니다. 후자의 경우 시스템은 해당 작업에 대해 교환되는 메시지의 형식을 결정합니다.
projection 유선 데이터의 표현입니다. 예를 들어 SOAP 프로젝션은 메시지를 SOAP 봉투로 보내고 웹 프로젝션은 JSON 형식으로 메시지를 보냅니다.
안전 WCF의 보안에는 기밀성(도청을 방지하기 위한 메시지 암호화), 무결성(메시지 변조 감지 수단), 인증(서버 및 클라이언트 유효성 검사 수단) 및 권한 부여(리소스에 대한 액세스 제어)가 포함됩니다. 이러한 함수는 HTTP를 통한 TLS(HTTPS라고도 함)와 같은 기존 보안 메커니즘을 활용하거나 다양한 WS-* 보안 사양 중 하나 이상을 구현하여 제공됩니다.
자체 호스팅 서비스 자체 호스팅 서비스는 개발자가 만든 프로세스 애플리케이션 내에서 실행되는 서비스입니다. 개발자는 수명을 제어하고, 서비스의 속성을 설정하고, 서비스를 열고(수신 모드로 설정) 서비스를 닫습니다.
서비스 하나 이상의 엔드포인트를 노출하는 프로그램 또는 프로세스로, 각 엔드포인트는 하나 이상의 작업을 노출합니다.
서비스 계약 서비스 계약은 여러 관련 작업을 단일 기능 단위로 연결합니다. 계약은 서비스의 네임스페이스, 해당 콜백 계약 및 기타 설정과 같은 서비스 수준 설정을 정의할 수 있습니다. 대부분의 경우 계약은 선택한 프로그래밍 언어로 인터페이스를 만들고 T:System.ServiceModel.ServiceContractAttribute 특성을 인터페이스에 적용하여 정의됩니다. 실제 서비스 코드는 인터페이스를 구현하여 결과를 생성합니다.
서비스 작업 서비스 작업은 작업에 대한 기능을 구현하는 서비스 코드에 정의된 프로시저입니다. 이 작업은 WCF 클라이언트에서 메서드로 클라이언트에 노출됩니다. 메서드는 값을 반환할 수 있으며 선택적 수의 인수를 사용하거나 인수를 사용하지 않고 응답을 반환하지 않을 수 있습니다. 예를 들어 "Hello"로 작동하는 작업을 클라이언트의 현재 상태 알림으로 사용하고 일련의 작업을 시작할 수 있습니다.
시스템 제공 바인딩 WCF에는 여러 시스템 제공 바인딩이 포함되어 있습니다. 특정 시나리오에 최적화된 바인딩 요소의 컬렉션입니다. 예를 들어 T:System.ServiceModel.WSHttpBinding은 다양한 WS-* 사양을 구현하는 서비스와의 상호 운용성을 위해 설계되었습니다. 이러한 바인딩은 특정 시나리오에 올바르게 적용할 수 있는 옵션만 제공하여 시간을 절약합니다. 이러한 바인딩 중 하나가 요구 사항을 충족하지 않는 경우 고유한 사용자 지정 바인딩을 만들 수 있습니다.
종료 작업 기존 세션의 마지막 메시지로 호출되는 작업입니다. 기본 사례에서 WCF는 서비스가 연결된 세션이 닫힌 후 서비스 개체와 해당 컨텍스트를 재활용합니다.
전송 보안 모드 보안은 전송 모드, 메시지 보안 모드 및 메시지 자격 증명 모드가 있는 전송의 세 가지 모드 중 하나에서 제공할 수 있습니다. 전송 보안 모드는 전송 계층 메커니즘(예: HTTPS)에서 기밀성, 무결성 및 인증을 제공하도록 지정합니다. HTTPS와 같은 전송을 사용하는 경우 이 모드는 성능이 효율적이라는 장점이 있으며 인터넷에서의 보급으로 인해 잘 이해됩니다. 단점은 이러한 종류의 보안이 통신 경로의 각 홉에 별도로 적용되어 통신이 "중간에 있는 사람" 공격에 취약하다는 것입니다.
메시지 자격 증명 보안 모드를 사용하여 전송 이 모드는 전송 계층을 사용하여 메시지의 기밀성, 인증 및 무결성을 제공하는 반면 각 메시지에는 메시지 수신자가 요구하는 여러 자격 증명(클레임)이 포함될 수 있습니다.
형식 변환기 CLR 형식은 CLR 형식의 인스턴스를 다른 형식의 인스턴스로 변환할 수 있도록 하는 하나 이상의 System.ComponentModel.TypeConverter 파생 형식과 연결할 수 있습니다. 형식 변환기는 System.ComponentModel.TypeConverterAttribute 특성을 사용하여 CLR 형식과 연결됩니다. TypeConverterAttribute는 CLR 형식 또는 속성에서 직접 지정할 수 있습니다. 속성에 지정된 형식 변환기는 항상 속성의 CLR 형식에 지정된 형식 변환기보다 우선합니다.
WCF 클라이언트 WCF 클라이언트는 서비스 작업을 메서드로 노출하는 클라이언트-애플리케이션 구문입니다(Visual Basic 또는 Visual C#과 같이 선택한 .NET Framework 프로그래밍 언어로). 모든 애플리케이션은 서비스를 호스트하는 애플리케이션을 포함하여 WCF 클라이언트를 호스트할 수 있습니다. 따라서 다른 서비스의 WCF 클라이언트를 포함하는 서비스를 만들 수 있습니다. ServiceModel 메타데이터 유틸리티 도구(Svcutil.exe)를 사용하고 메타데이터를 게시하는 실행 중인 서비스를 가리키면 WCF 클라이언트를 자동으로 생성할 수 있습니다.
워크플로 서비스 워크플로 서비스는 워크플로로 구현되는 WCF 서비스입니다. 워크플로에는 WCF 메시지를 보내고 받는 메시징 활동이 포함됩니다.
WS-* WCF에서 구현되는 WS-Security, WS-ReliableMessaging 등의 증가하는 WS(웹 서비스) 사양 집합에 대한 약식입니다.
XAML eXtensible Application Markup Language
XAML 스키마 XAML에서 사용자 지정 형식을 정의하는 데 사용되는 태그 스키마입니다.