다음을 통해 공유


시스템 제공 바인딩

바인딩은 끝점과 통신할 때 사용할 통신 메커니즘을 지정하고 끝점에 연결하는 방법을 나타냅니다. 바인딩에 다음과 같은 요소가 포함됩니다.

  • 프로토콜 스택은 끝점에 보내는 메시지에 사용할 보안, 안정성 및 컨텍스트 흐름 설정을 결정합니다.

  • 전송은 끝점에 메시지를 보낼 때 사용할 TCP 또는 HTTP와 같은 기본 전송 프로토콜을 결정합니다.

  • 인코딩은 끝점에 보내는 메시지에 사용할 텍스트/XML, 이진 또는 MTOM(Message Transmission Optimization Mechanism) 등의 연결 인코딩을 결정합니다.

이 항목에서는 모든 시스템 제공 WCF(Windows Communication Foundation) 바인딩을 제공합니다. 이러한 바인딩이 모두 응용 프로그램에 대한 정확한 조건을 충족하지 않을 경우 사용자 지정 바인딩을 만들 수 있습니다. 사용자 지정 바인딩 만들기에 대한 자세한 내용은 사용자 지정 바인딩을 참조하십시오.

WS-Federation 프로토콜을 지원하는 안전하며 상호 운용 가능한 바인딩을 사용하면 페더레이션에 있는 조직이 사용자를 효율적으로 인증하고 권한을 부여할 수 있습니다.

ms730879.Important(ko-kr,VS.100).gif 참고:
항상 보안을 포함하는 바인딩을 선택합니다. 기본적으로 <basicHttpBinding> 요소를 제외한 모든 바인딩에는 보안이 설정되어 있습니다. 보안 바인딩을 선택하지 않거나 보안을 비활성화하는 경우 보안 데이터 센터 또는 격리된 네트워크에 저장하는 것과 같은 방식으로 데이터를 보호해야 합니다.

ms730879.Important(ko-kr,VS.100).gif 참고:
다른 방법으로 데이터의 보안을 유지하지 않는 한 보안을 지원하지 않거나 보안이 설정되지 않은 바인딩과 함께 이중 계약을 사용하지 마십시오.

시스템 제공 바인딩

다음 바인딩은 WCF와 함께 제공됩니다.

바인딩 구성 요소 설명

BasicHttpBinding

<basicHttpBinding>

WS-Basic Profile 사양의 웹 서비스와 통신하는 데 적합한 바인딩에는 ASP.NET 웹 서비스(ASMX) 기반 서비스 등이 있습니다. 이 바인딩은 HTTP를 전송으로 사용하고 텍스트/XML을 기본 메시지 인코딩으로 사용합니다.

WSHttpBinding

<wsHttpBinding>

비이중 서비스 계약에 적합한 안전하고 상호 운용할 수 있는 바인딩입니다.

WSDualHttpBinding

<wsDualHttpBinding>

이중 서비스 계약 또는 SOAP 매개자를 통한 통신에 적합한 안전하고 상호 운용할 수 있는 바인딩입니다.

WSFederationHttpBinding

<wsFederationHttpBinding>

WS-Federation 프로토콜을 지원하는 안전하며 상호 운용 가능한 바인딩을 사용하면 페더레이션에 있는 조직이 사용자를 효율적으로 인증하고 권한을 부여할 수 있습니다.

NetTcpBinding

<netTcpBinding>

WCF 응용 프로그램 간 시스템 통신에 적합한 안전하고 최적화된 바인딩입니다.

NetNamedPipeBinding

<netNamedPipeBinding>

WCF 응용 프로그램 간 시스템 통신에 적합한, 안전하고 신뢰할 수 있으며 최적화된 바인딩입니다.

NetMsmqBinding

<netMsmqBinding>

WCF 응용 프로그램 간 시스템 통신에 적합한 대기 중인 바인딩입니다.

NetPeerTcpBinding

<netPeerTcpBinding>

안전하게 여러 시스템 간에 통신할 수 있는 바인딩입니다.

MsmqIntegrationBinding

<msmqIntegrationBinding>

WCF 응용 프로그램과 기존 메시지 큐 응용 프로그램 간 시스템 통신에 적합한 바인딩입니다.

BasicHttpContextBinding

<basicHttpContextBinding>

HTTP 쿠키를 사용하여 컨텍스트를 교환할 수 있는 WS-Basic Profile 사양의 웹 서비스와 통신하는 데 적합한 바인딩입니다.

NetTcpContextBinding

<netTcpContextBinding>

SOAP 헤더를 사용하여 컨텍스트를 교환할 수 있는 WCF 응용 프로그램 간 시스템 통신에 적합한 안전하고 최적화된 바인딩입니다.

WebHttpBinding

<webHttpBinding>

SOAP 메시지 대신 HTTP 요청을 통해 노출되는 WCF 웹 서비스에 대한 끝점을 구성하는 데 사용되는 바인딩입니다.

WSHttpContextBinding

<wsHttpContextBinding>

SOAP 헤더를 사용하여 컨텍스트를 교환할 수 있는 비이중 서비스 계약에 적합한 안전하고 상호 운용 가능한 바인딩입니다.

다음 표에서는 각 시스템 제공 바인딩의 기능을 보여 줍니다. 바인딩은 표 열에 있고, 기능은 행에 나열되며 두 번째 표에 설명되어 있습니다. 다음 표에는 사용된 바인딩 약어에 대한 키가 나와 있습니다. 바인딩을 선택하려면 필요한 행 기능을 모두 만족하는 열을 결정합니다.

바인딩 상호 운용성 보안(기본값) 세션 (기본값) 트랜잭션 이중 인코딩(기본값) 스트리밍 (기본값)

BasicHttpBinding

Basic Profile 1.1

(None), Transport, Message, Mixed

(None)

(None)

해당 없음

Text, (MTOM)

(buffered)

WSHttpBinding

WS

Transport, (Message), Mixed

(None), Reliable Session, Security Session

(None), 예

해당 없음

(Text), MTOM

아니요

WSDualHttpBinding

WS

(Message), None

(Reliable Session), Security Session

(None), 예

(Text), MTOM

아니요

WSFederationHttpBinding

WS-Federation

(Message), Mixed, None

(None), Reliable Session, Security Session

(None), 예

아니요

(Text), MTOM

아니요

NetTcpBinding

.NET

(Transport), Message, None, Mixed

(Transport), Reliable Session, Security Session

(None), 예

Binary

(buffered)

NetNamedPipeBinding

.NET

(Transport), None

None, (Transport)

(None), 예

Binary

(buffered)

NetMsmqBinding

.NET

Message, (Transport), None

(None), Transport

None, (예)

아니요

Binary

아니요

NetPeerTcpBinding

Peer

(Transport)

(None)

(None)

아니요

MsmqIntegrationBinding

MSMQ

(Transport)

(None)

None, (예)

해당 없음

해당 없음

아니요

BasicHttpContextBinding

Basic Profile 1.1

(None), Transport, Message, Mixed

(None)

(None)

해당 없음

Text, (MTOM)

(buffered)

NetTcpContextBinding

.NET

(Transport), Message, None, Mixed

(Transport), Reliable Session, Security Session

(None), 예

Binary

(buffered)

WSHttpContextBinding

WS

Transport, (Message), Mixed

(None), Reliable Session, Security Session

(None), 예

해당 없음

Text, (MTOM)

아니요

다음 표에서는 앞의 표에 나열되어 있는 기능에 대해 설명합니다.

기능 설명

상호 운용성 형식

바인딩이 상호 운용하는 프로토콜 또는 기술에 이름을 지정합니다.

보안

채널 보안 방식을 지정합니다.

  • None: SOAP 메시지의 보안이 유지되지 않고 클라이언트가 인증되지 않습니다.

  • Transport: 전송 계층에서 보안 요구 사항을 충족합니다.

  • Message: 메시지 계층에서 보안 요구 사항을 충족합니다.

  • Mixed: 클레임이 메시지에 포함됩니다. 무결성 및 기밀성 요구 사항은 전송 계층에서 충족됩니다.

세션

이 바인딩이 세션 계약을 지원할지 여부를 지정합니다.

트랜잭션

트랜잭션이 활성화되었는지 여부를 지정합니다.

이중

이중 계약이 지원되는지 여부를 지정합니다. 이 기능을 사용하려면 바인딩의 세션을 지원해야 합니다.

인코딩

메시지의 통신 형식을 지정합니다. 허용 가능한 값은 다음과 같습니다.

  • Text: 예를 들어 UTF-8이 있습니다.

  • Binary

  • MTOM(Message-Transmission Optimization Mechanism): SOAP 봉투의 컨텍스트 내에서 이진 XML 요소를 효율적으로 인코딩하는 방법입니다.

스트리밍

스트리밍이 들어오는 메시지와 보내는 메시지를 지원하는지 여부를 지정합니다. 바인딩의 TransferMode 속성을 사용하여 값을 설정합니다. 허용 가능한 값은 다음과 같습니다.

  • Buffered: 요청 및 응답 메시지가 모두 버퍼링됩니다.

  • Streamed: 요청 및 응답 메시지가 모두 스트리밍됩니다. 

  • StreamedRequest: 요청 메시지는 스트리밍되고 응답 메시지는 버퍼링됩니다. 

  • StreamedResponse: 요청 메시지는 버퍼링되고 응답 메시지는 스트리밍됩니다.

참고 항목

개념

끝점 만들기 개요
바인딩을 사용하여 서비스 및 클라이언트 구성

기타 리소스

기본 WCF 프로그래밍