다음을 통해 공유


System-Provided 상호 운용성 바인딩에서 지원하는 웹 서비스 프로토콜

WCF(Windows Communication Foundation)는 웹 서비스 사양이라고 하는 일련의 사양을 지원하는 웹 서비스와 상호 운용되도록 빌드되었습니다. 상호 운용성 모범 사례에 대한 서비스 구성을 간소화하기 위해, WCF는 System.ServiceModel.BasicHttpBinding, System.ServiceModel.WSHttpBinding, System.ServiceModel.WSDualHttpBinding와 같은 세 가지 상호 운용 가능한 시스템 제공 바인딩을 도입했습니다. OASIS(Structured Information Standards) 표준의 발전을 위한 조직과의 상호 운용성을 위해 WCF에는 상호 운용 가능한 시스템 제공 바인딩 System.ServiceModel.WS2007HttpBinding이 하나 포함되어 있습니다. 메타데이터 게시의 경우 WCF에는 상호 운용 가능한 시스템 제공 바인딩<인 mexHttpBinding> 및<mexHttpsBinding>이 포함됩니다. 이 항목에서는 시스템에서 제공하는 상호 운용 가능한 바인딩이 지원하는 사양을 나열합니다.

basicHttpBinding, wsHttpBinding, ws2007HttpBinding 및 wsDualHttpBinding에서 지원하는 웹 서비스 프로토콜

모든 바인딩

<basicHttpBinding>, <wsHttpBinding><ws2007HttpBinding> 바인딩은 다음 프로토콜을 지원합니다.

비고

메타데이터를 게시하는 데 사용되는 바인딩에 대한 자세한 내용은 이 항목의 뒷부분에 있는 "System-Provided 메타데이터 바인딩" 섹션을 참조하세요.

카테고리 프로토콜 사양 및 사용 현황
운송 HTTP 1.1 HTTP 1.1

BasicHttpBinding, WSHttpBindingHTTP 및 WS2007HttpBinding HTTPS 전송을 사용합니다.
메시징 엠톰 MTOM

basicHttpBinding, wsHttpBindingws2007HttpBinding MTOM(메시지 전송 최적화 메커니즘)을 지원합니다. 기본적으로 사용되지 않습니다. MTOM을 사용하려면 messageEncoding 특성을 "Mtom"로 설정합니다.

예제:

<wsHttpBinding> <binding messageEncoding="Mtom"/> </wsHttpBinding>
메타데이터 WSDL 1.1 WSDL 1.1

WCF는 WSDL(Web Services Description Language)을 사용하여 서비스를 설명합니다.
메타데이터 WS-Policy WS-Policy

WCF는 WS-Policy 사양을 도메인별 어설션과 함께 사용하여 서비스 요구 사항 및 기능을 설명합니다.
메타데이터 WS-Policy 1.5 WS-Policy 1.5

WCF는 WS-Policy 사양을 도메인별 어설션과 함께 사용하여 서비스 요구 사항 및 기능을 설명합니다.
메타데이터 WS-PolicyAttachment WS-정책 첨부

WCF는 WSDL(Web Services Description Language)의 다양한 범위에서 정책 식을 연결하는 WS-PolicyAttachment 구현합니다.
메타데이터 WS-MetadataExchange WS-MetadataExchange

WCF는 XML 스키마, WSDL 및 WS-Policy를 검색하는 WS-MetadataExchange 구현합니다.

basicHttpBinding (기본 HTTP 바인딩)

카테고리 프로토콜 사양 및 사용 현황
메시징 SOAP 1.1 SOAP 1.1

기본 프로필 1.1 basicHttpBinding 에 따라 요소는 SOAP 1.1 메시지 프로토콜을 구현합니다.
안전 WSS SOAP 메시지 보안 1.0 WSS SOAP 메시지 보안 1.0

기본 보안 프로필 basicHttpBinding 에 따라 요소는 사용자 이름/암호 및 X.509 기반 보안에 대한 WSS(웹 서비스 보안) SOAP 메시지 보안 1.0 사양을 구현합니다.

<basicHttpBinding> <binding name="Binding1"> <security mode="TransportWithMessageCredential &#124; "Message" .../> </binding> </basicHttpBinding>
안전 WSS SOAP 메시지 보안 프로필 UsernameToken 1.0 WSS SOAP 메시지 보안 UsernameToken 프로필 1.0

<basicHttpBinding> <binding name="Binding1"> <security mode="TransportWithMessageCredential"> <transport clientCredentialType="Basic"/> </security> </basicHttpBinding>
안전 WSS SOAP 메시지 보안 X.509 인증서 토큰 프로필 1.0 WSS SOAP 메시지 보안 X.509 인증서 토큰 프로필 1.0

<basicHttpBinding> <security mode="Message"> <message clientCredentialType="Certificate"/> </security> </basicHttpBinding>

wsHttpBinding, ws2007HttpBinding 및 wsDualHttpBinding

카테고리 프로토콜 사양 및 사용 현황
메시징 SOAP 1.2 입문서

메시징 프레임워크

부속(HTTP 바인딩 포함)
메시징 WS-Addressing 2005/08 Web Services Addressing 1.0 - Core

Web Services Addressing 1.0 - SOAP

wsHttpBinding비동기 메시징, ws2007HttpBinding메시지 상관 관계 및 wsDualHttpBinding 전송 중립적 주소 지정 메커니즘을 사용하도록 설정하는 W3C(World Wide Web 컨소시엄) WS-Addressing 권장 사항을 구현합니다.

WS-* 사양에서 허용되더라도 WCF는 WS-Addressing 헤더의 암호화를 지원하지 않습니다.
메시징 WS-Addressing 1.0 - 메타데이터 WS-Addressing 1.0 메타데이터 이 프로토콜에 대한 지원은 ServiceMetadata 동작에서 정책 버전을 설정하여 사용하도록 설정됩니다. 정책 변환이 1.2(기본값)로 설정된 경우 wsdl 설명은 WS-Addressing wsdl을 준수하고, 정책 변환은 1.5로 설정되며, wsdl 설명은 ws 주소 지정 메타데이터를 준수합니다.

WS-* 사양에서 허용되더라도 WCF는 WS-Addressing 헤더의 암호화를 지원하지 않습니다.
안전 WSS SOAP 메시지 보안 1.0 WSS SOAP 메시지 보안 1.0

특성이 securityMode "wsSecurityOverHttp"(기본값)로 설정되고 매개 변수가 자식 요소를 사용하여 wsSecurity 구성된 경우에 사용합니다.

<wsHttpBinding> <binding name="myBinding"> <security mode="Message" .../> </binding> </wsHttpBinding>
안전 WSS SOAP 메시지 보안 사용자명토큰 프로파일 1.1 WSS SOAP 메시지 보안 UsernameToken 프로필 1.0

요소의 wsSecurity 특성이 authenticationMode "Username"으로 설정된 경우에 사용합니다.

<wsHttpBinding> <binding name="MyBinding"> <security mode="Message> <message clientCredentialType="UserName negotiateServiceCredential="false" establishSecurityContext="false"/> </security> </binding> </wsHttpBinding>
안전 WSS SOAP 메시지 보안 X.509 인증서 토큰 프로필 1.1 WSS SOAP 메시지 보안 X.509 인증서 토큰 프로필 1.1

요소의 wsSecurity 특성이 authenticationMode "Username", "Certificate" 또는 "None"으로 설정된 경우 메시지 보호에 사용합니다. 또한 wsSecurity 요소의 authenticationMode 특성이 "인증서"로 설정된 경우, 이를 클라이언트 인증에 사용하십시오.

<wsHttpBinding> <binding name="MyBinding"> <security mode="Message> <message clientCredentialType="Certificate" negotiateServiceCredential="false" establishSecurityContext="false"/> </security> </binding> </wsHttpBinding>
안전 WSS SOAP 메시지 보안 Kerberos 토큰 프로필 1.1 WSS SOAP 메시지 보안 Kerberos 토큰 프로필 1.1

요소의 wsSecurity 특성이 "Windows"로 설정된 경우 authenticationMode 인증 및 메시지 보호에 사용합니다.

<wsHttpBinding> <binding name="MyBinding"> <security mode="Message> <message clientCredentialType="Windows" negotiateServiceCredential="false" establishSecurityContext="false"/> </security> </binding> </wsHttpBinding>
안전 WS-SecureConversation WS-SecureConversation

특성이 "Message"로 설정되고 security/@mode 특성이 "true"(기본값)로 설정된 경우 message/@establishSecurityContext 보안 세션을 제공하는 데 사용합니다.
안전 WS-Trust WS-Trust

WS-SecureConversation 사용됩니다(위 참조).
신뢰할 수 있는 메시징 WS-ReliableMessaging WS-ReliableMessaging

reliableSession을 사용하도록 바인딩이 구성된 경우 사용하십시오.

<wsHttpBinding> <binding name="myBinding"> <reliableSession/> </binding> </wsHttpBinding>
트랜잭션 WS-AtomicTransaction WS-AtomicTransaction

트랜잭션 관리자 간의 통신에 사용합니다. WCF 클라이언트 및 서비스는 항상 로컬 트랜잭션 관리자를 사용합니다.
트랜잭션 WS-Coordination WS 조정

특성이 "허용됨" 또는 "필수"로 설정된 경우 flowTransactions 트랜잭션 컨텍스트를 이동하는 데 사용합니다.

<wsHttpBinding> <binding transactionFlow="true"/> </wsHttpBinding>

wsFederationHttpBinding 및 ws2007FederationHttpBinding

<wsFederationHttpBinding><ws2007FederationHttpBinding 요소는 제3자가 클라이언트를 인증하는> 데 사용되는 토큰을 발급하는 페더레이션 시나리오에 대한 지원을 제공하기 위해 도입되었습니다. 사용되는 wsHttpBindingwsFederationHttpBinding 프로토콜 외에도 다음을 활용합니다.

  • WS-Trust 토큰 발급을 위한 것입니다.

  • 가장 일반적으로 발급된 토큰 형식에 대한 WSS SAML(보안 어설션 태그 언어) 토큰 프로필 1.0 및 1.1입니다.

예제:

<wsFederationHttpBinding>
  <binding name="myBinding">
     <security mode="Message">
       <message issuedKeyType="Symmetric"
                issuedTokenType="http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.1#SAMLV1.1">
         <issuerMetadata address =
         'http://localhost/FederationSample/HomeRealmSTS/STS.svc/mex'/>
       </message>
     </security>
  </binding>
</wsFederationHttpBinding>

자세한 내용은 페더레이션을 참조하세요.

System-Provided 메타데이터 바인딩

다음 표는 System.ServiceModel.Description.MetadataExchangeBindings 클래스의 시스템 제공 상호 운용 가능한 메타데이터 바인딩에서 지원하는 프로토콜을 설명합니다.

mexHttpBinding

mexHttpBinding< 바인딩은> 다음 프로토콜을 지원합니다. 이 바인딩을 사용하는 방법에 대한 자세한 내용은 메타데이터 게시를 참조하세요.

카테고리 프로토콜 사양 및 사용 현황
운송 HTTP 1.1 HTTP 1.1
메시징 SOAP 1.2 입문서

메시징 프레임워크

부속(HTTP 바인딩 포함)
메시징 WS-Addressing 2005/08 Web Services Addressing 1.0 - Core

Web Services Addressing 1.0 - SOAP
메타데이터 WS-MetadataExchange WS-MetadataExchange

WCF는 XML 스키마, WSDL 및 WS-Policy를 검색하는 WS-MetadataExchange 구현합니다.

mexHttpsBinding

<mexHttpsBinding> 은 다음 프로토콜을 지원합니다. 이 바인딩을 사용하는 방법에 대한 자세한 내용은 메타데이터 게시를 참조하세요.

카테고리 프로토콜 사양 및 사용 현황
운송 HTTP 1.1 HTTP 1.1

전송 보안을 사용할 수 있습니다.
메시징 SOAP 1.2 입문서

메시징 프레임워크

부속(HTTP 바인딩 포함)
메시징 WS-Addressing 2005/08 Web Services Addressing 1.0 - Core

Web Services Addressing 1.0 - SOAP
메타데이터 WS-MetadataExchange WS-MetadataExchange

WCF는 XML 스키마, WSDL 및 WS-Policy를 검색하는 WS-MetadataExchange 구현합니다.

참고하십시오