Liaisons fournies par le systèmeSystem-provided bindings

Les liaisons spécifient le mécanisme de communication à utiliser pour communiquer avec un point de terminaison et indiquer comment se connecter à un point de terminaison.Bindings specify the communication mechanism to use when talking to an endpoint and indicate how to connect to an endpoint. Une liaison contient les éléments suivants :A binding contains the following elements:

  • La pile de protocole détermine la sécurité, la fiabilité et les paramètres de flux de contexte à utiliser pour les messages envoyés au point de terminaison.The protocol stack determines the security, reliability, and context flow settings to use for messages that are sent to the endpoint.

  • Le transport détermine le protocole de transport sous-jacent à utiliser lors de l'envoi des messages au point de terminaison, par exemple, TCP ou HTTP.The transport determines the underlying transport protocol to use when sending messages to the endpoint, for example, TCP or HTTP.

  • L’encodage détermine l’encodage de câble à utiliser pour les messages envoyés au point de terminaison.The encoding determines the wire encoding to use for messages that are sent to the endpoint. Par exemple, texte/XML, binaire ou MTOM (Message Transmission Optimization Mechanism).For example, text/XML, binary, or Message Transmission Optimization Mechanism (MTOM).

Cet article présente toutes les liaisons WCF (Windows Communication Foundation) fournies par le système.This article presents all of the system-provided Windows Communication Foundation (WCF) bindings. Si aucune de ces liaisons ne répond aux critères exacts de votre application, vous pouvez créer une liaison personnalisée.If none of these bindings meets the exact criteria for your application, you can create a custom binding. Pour plus d’informations sur la création de liaisons personnalisées, consultez Liaisons personnalisées.For more information about creating custom bindings, see Custom Bindings.

Une liaison sécurisée et interopérable qui prend en charge le protocole WS-Federation permet aux organisations qui sont dans une fédération d’authentifier et d’autoriser efficacement les utilisateurs.A secure and interoperable binding that supports the WS-Federation protocol enables organizations that are in a federation to efficiently authenticate and authorize users.

Important

Sélectionnez toujours une liaison qui inclut la sécurité.Always select a binding that includes security. Par défaut, la sécurité est activée pour toutes les liaisons, à l’exception de l’élément <basicHttpBinding>.By default, all bindings except the <basicHttpBinding> element have security enabled. Si vous ne sélectionnez pas de liaison sécurisée ou désactivez la sécurité, veillez à protéger vos données d’une manière ou d’une autre, telle que le stockage dans un centre de données sécurisé ou sur un réseau isolé.If you do not select a secure binding or disable security, be sure to protect your data in some other manner, such as storing in a secured data center or on an isolated network.

Important

N’utilisez jamais des contrats duplex avec les liaisons qui ne prennent pas en charge la sécurité ou dont la sécurité est désactivée sauf si vous sécurisez les données d’un moyen ou un autre.Never use duplex contracts with bindings that do not support security or that have security disabled unless you secure the data by some other means.

Les liaisons suivantes sont fournies avec WCF :The following bindings ship with WCF:

LiaisonBinding Élément de configurationConfiguration Element DescriptionDescription
BasicHttpBinding <basicHttpBinding><basicHttpBinding> Liaison appropriée à la communication avec les services web conformes au profil WS-Basic, par exemple les services basés sur les services web ASP.NET (ASMX).A binding that is suitable for communicating with WS-Basic Profile-conformant Web services, for example, ASP.NET Web services (ASMX)-based services. Cette liaison utilise HTTP comme le transport et texte/XML comme encodage de message par défaut.This binding uses HTTP as the transport and text/XML as the default message encoding.
WSHttpBinding <wsHttpBinding><wsHttpBinding> Une liaison sécurisée et interopérable adaptée aux contrats de service non duplex.A secure and interoperable binding that is suitable for non-duplex service contracts.
WSDualHttpBinding <wsDualHttpBinding><wsDualHttpBinding> Une liaison sécurisée et interopérable appropriée pour les contrats de service duplex ou les communications par le biais des intermédiaires SOAP.A secure and interoperable binding that is suitable for duplex service contracts or communication through SOAP intermediaries.
WSFederationHttpBinding <wsFederationHttpBinding><wsFederationHttpBinding> Liaison sécurisée et interopérable prenant en charge le protocole WS-Federation, ce qui permet aux organisations membres d’une fédération d’appliquer efficacement des procédures d’authentification et d’autorisation aux utilisateurs.A secure and interoperable binding that supports the WS-Federation protocol, which enables organizations that are in a federation to efficiently authenticate and authorize users.
NetHttpBinding <netHttpBinding><netHttpBinding> Liaison conçue pour consommer des services HTTP ou WebSocket qui utilise l’encodage binaire par défaut.A binding designed for consuming HTTP or WebSocket services that uses binary encoding by default.
NetHttpsBinding <netHttpsBinding><netHttpsBinding> Liaison sécurisée conçue pour consommer des services HTTP ou WebSocket qui utilise l'encodage binaire par défaut.A secure binding designed for consuming HTTP or WebSocket services that uses binary encoding by default.
NetTcpBinding <netTcpBinding><netTcpBinding> Liaison sécurisée et optimisée, adaptée à la communication des applications WCF entre les machines.A secure and optimized binding suitable for cross-machine communication between WCF applications.
NetNamedPipeBinding <netNamedPipeBinding><netNamedPipeBinding> Liaison sécurisée, fiable et optimisée adaptée à la communication des applications WCF sur les machines.A secure, reliable, optimized binding that is suitable for on-machine communication between WCF applications.
NetMsmqBinding <netMsmqBinding><netMsmqBinding> Liaison en file d’attente adaptée à la communication des applications WCF entre les machines.A queued binding that is suitable for cross-machine communication between WCF applications.
NetPeerTcpBinding <netPeerTcpBinding><netPeerTcpBinding> Une liaison qui permet la communication sécurisée entre plusieurs ordinateurs.A binding that enables secure, multiple machine communication.
MsmqIntegrationBinding <msmqIntegrationBinding><msmqIntegrationBinding> Liaison adaptée à la communication d’une application WCF avec des applications Message Queuing entre les machines.A binding that is suitable for cross-machine communication between a WCF application and existing Message Queuing applications.
BasicHttpContextBinding <basicHttpContextBinding><basicHttpContextBinding> Liaison adaptée à la communication avec les services web conformes au profil WS-Basic, ce qui permet l’utilisation de cookies HTTP pour l’échange de contexte.A binding suitable for communicating with WS-Basic Profile conformant Web services that enables HTTP cookies to be used to exchange context.
NetTcpContextBinding <netTcpContextBinding><netTcpContextBinding> Liaison sécurisée et optimisée adaptée à la communication des applications WCF entre les machines, ce qui permet l’utilisation d’en-têtes SOAP pour l’échange de contexte.A secure and optimized binding suitable for cross-machine communication between WCF applications that enables SOAP headers to be used to exchange context.
WebHttpBinding <webHttpBinding><webHttpBinding> Liaison utilisée afin de configurer des points de terminaison pour les services web WCF qui sont exposés via des requêtes HTTP au lieu de messages SOAP.A binding used to configure endpoints for WCF Web services that are exposed through HTTP requests instead of SOAP messages.
WSHttpContextBinding <wsHttpContextBinding><wsHttpContextBinding> Liaison sécurisée et interopérable adaptée aux contrats de service non duplex, ce qui permet l’utilisation d’en-têtes SOAP pour l’échange de contexte.A secure and interoperable binding suitable for non-duplex service contracts that enables SOAP headers to be used to exchange context.
UdpBinding <udpBinding><udpBinding> Liaison à utiliser lors de l'envoi d'une rafale de messages simples à un grand nombre de clients simultanément.A binding to use when sending a burst of simple messages to a large number of clients simultaneously.

Le tableau suivant affiche les fonctionnalités de chacune des liaisons fournies par le système.The following table shows the features of each of the system-provided bindings. Les liaisons figurent dans les colonnes du tableau ; les fonctionnalités sont répertoriées dans les lignes et décrites dans un deuxième tableau.The bindings are found in the table columns; the features are listed in the rows and described in a second table. Le tableau suivant fournit une clé pour les abréviations de liaison utilisées.The following table provides a key for the binding abbreviations used. Pour sélectionner une liaison, déterminez quelle colonne satisfait toutes les fonctionnalités de ligne dont vous avez besoin.To select a binding, determine which column satisfies all of the row features you need.

LiaisonBinding InteropérabilitéInteroperability Sécurité (valeur par défaut)Security (Default) SessionSession
(Default)(Default)
TransactionsTransactions DuplexDuplex Encodage (Valeur par défaut)Encoding (Default) Diffusion en continuStreaming
(Default)(Default)
BasicHttpBinding Basic Profile 1.1Basic Profile 1.1 (Aucun), transport, message, mixte(None), Transport, Message, Mixed (Aucun)(None) (Aucun)(None) N/An/a Texte, (MTOM)Text, (MTOM) OuiYes
(mis en mémoire tampon)(buffered)
WSHttpBinding WSWS Transport, (message), mixteTransport, (Message), Mixed (Aucun), session fiable, session de sécurité(None), Reliable Session, Security Session (Aucun), oui(None), Yes N/An/a (Texte), MTOM(Text), MTOM NonNo
WSDualHttpBinding WSWS (Message), aucun(Message), None (Session fiable), session de sécurité(Reliable Session), Security Session (Aucun), oui(None), Yes OuiYes (Texte), MTOM(Text), MTOM NonNo
WSFederationHttpBinding WS-FederationWS-Federation (Message), mixte, aucun(Message), Mixed, None (Aucun), session fiable, session de sécurité(None), Reliable Session, Security Session (Aucun), oui(None), Yes NonNo (Texte), MTOM(Text), MTOM NonNo
NetHttpBinding .NET.NET (None), Transport, Message, TransportWithMessageCredential, TransportCredentialOnly(None), Transport, Message, TransportWithMessageCredential, TransportCredentialOnly Voir la remarque ci-dessousSee note below Aucun.None Voir la remarque ci-dessousSee note below (Binaire), Texte, MTOM(Binary), Text, MTOM Oui (mis en mémoire tampon)Yes (buffered)
NetHttpsBinding .NET.NET (Transport), TransportWithMessageCredential(Transport), TransportWithMessageCredential Voir la remarque ci-dessousSee note below Aucun.None Voir la remarque ci-dessousSee note below (Binaire), Texte, MTOM(Binary), Text, MTOM OuiYes
(mis en mémoire tampon)(buffered)
NetTcpBinding .NET.NET (Transport), message, aucun, mixte(Transport), Message, None, Mixed (Transport), session fiable, session de sécurité(Transport), Reliable Session, Security Session (Aucun), oui(None), Yes OuiYes BinaireBinary OuiYes
(mis en mémoire tampon)(buffered)
NetNamedPipeBinding .NET.NET (Transport), aucun(Transport), None Aucun, (Transport)None, (Transport) (Aucun), oui(None), Yes OuiYes BinaireBinary OuiYes
(mis en mémoire tampon)(buffered)
NetMsmqBinding .NET.NET Message, (Transport), AucunMessage, (Transport), None (Aucun), Transport(None), Transport Aucun, (Oui)None, (Yes) NonNo BinaireBinary NonNo
NetPeerTcpBinding PeerPeer (Transport)(Transport) (Aucun)(None) (Aucun)(None) OuiYes NonNo
MsmqIntegrationBinding MSMQMSMQ (Transport)(Transport) (Aucun)(None) Aucun, (Oui)None, (Yes) N/An/a N/An/a NonNo
BasicHttpContextBinding Basic Profile 1.1Basic Profile 1.1 (Aucun), transport, message, mixte(None), Transport, Message, Mixed (Aucun)(None) (Aucun)(None) N/An/a Texte, (MTOM)Text, (MTOM) OuiYes
(mis en mémoire tampon)(buffered)
NetTcpContextBinding .NET.NET (Transport), message, aucun, mixte(Transport), Message, None, Mixed (Transport), session fiable, session de sécurité(Transport), Reliable Session, Security Session (Aucun), oui(None), Yes OuiYes BinaireBinary OuiYes
(mis en mémoire tampon)(buffered)
WSHttpContextBinding WSWS Transport, (message), mixteTransport, (Message), Mixed (Aucun), session fiable, session de sécurité(None), Reliable Session, Security Session (Aucun), oui(None), Yes N/An/a Texte, (MTOM)Text, (MTOM) NonNo
UdpBinding

Remarque : L’interopérabilité peut être obtenue en implémentant la spécification standard SOAP sur UDP implémentée par cette liaison.Note: Interoperability can be achieved by implementing the standard SOAP-over-UDP spec which this binding implements.
.NET.NET (Aucun)(None) (Aucun)(None) (Aucun)(None) N/An/a (Texte)(Text) NonNo

Important

NetHttpBinding est une liaison conçue pour consommer des services HTTP ou WebSocket et utilise l'encodage binaire par défaut.NetHttpBinding is a binding designed for consuming HTTP or WebSocket services and uses binary encoding by default. NetHttpBinding détecte s’il est utilisé avec un contrat de requête-réponse ou un contrat duplex, puis change son comportement de manière appropriée. Il utilise le protocole HTTP pour les contrats de requête-réponse et WebSockets pour les contrats duplex.NetHttpBinding detects whether it's used with a request-reply contract or duplex contract and changes its behavior to match; it uses HTTP for request-reply and WebSockets for duplex. Ce comportement peut être remplacé à l’aide de le WebSocketTransportUsage paramètre de liaison : WhenDuplex - Il s'agit de la valeur par défaut et elle se comporte de la façon décrite ci-dessus.This behavior can be overridden using the WebSocketTransportUsage binding setting: WhenDuplex - This is the default value and behaves as described above. Jamais - Empêche l'utilisation de WebSockets.Never - This prevents WebSockets from being used. Toute tentative d’utilisation d’un contrat duplex avec ce paramètre entraîne une exception.Attempting to use a duplex contract with this setting results in an exception. Toujours - Force l'utilisation de WebSockets même pour les contrats de demande-réponse.Always - This forces WebSockets to be used even for request-reply contracts. NetHttpBinding prend en charge les sessions fiables en mode HTTP et en mode WebSocket.NetHttpBinding supports reliable sessions in both HTTP mode and WebSocket mode. Les sessions en mode WebSocket sont fournies par le transport.In WebSocket mode sessions are provided by the transport.

Le tableau suivant explique les fonctionnalités répertoriées dans le tableau précédent.The following table explains the features listed in the previous table.

FonctionnalitéFeature DescriptionDescription
Type d'interopérabilitéInteroperability Type Nomme le protocole ou la technologie avec laquelle la liaison garantit l'interopérabilité.Names the protocol or technology with which the binding ensures interoperation.
SécuritéSecurity Définit le mode de sécurisation du canal :Specifies how the channel is secured:
-None : Le message SOAP n’est pas sécurisé et le client n’est pas authentifié.- None: The SOAP message isn't secured and the client isn't authenticated.
-Transport : Exigences de sécurité sont satisfaites au niveau de la couche de transport.- Transport: Security requirements are satisfied at the transport layer.
-Message : Exigences de sécurité sont satisfaites au niveau de la couche de message.- Message: Security requirements are satisfied at the message layer.
-Mixte : Revendications sont contenues dans le message. les exigences de l’intégrité et la confidentialité sont satisfaites par la couche de transport.- Mixed: Claims are carried in the message; integrity and confidentiality requirements are satisfied by the transport layer.
SessionSession Spécifie si cette liaison prend en charge des contrats de session.Specifies whether this binding supports session contracts.
TransactionsTransactions Spécifie si les transactions sont activées.Specifies whether transactions are enabled.
DuplexDuplex Spécifie si les contrats duplex sont pris en charge.Specifies whether duplex contracts are supported. Notez que cette fonctionnalité requiert la prise en charge des sessions dans la liaison.Note that this feature requires support for Sessions in the binding.
EncodageEncoding Spécifie le format de câble du message.Specifies the wire format of the message. Les valeurs autorisées incluent :Allowable values include:
- Texte : UTF-8, par exemple.- Text: for example UTF-8.
- Binaire- Binary
-Message Transmission Optimization Mechanism (MTOM) : Une méthode permettant d’encoder efficacement des éléments XML binaires dans le contexte d’une enveloppe SOAP.- Message Transmission Optimization Mechanism (MTOM): A method for efficiently encoding binary XML elements within the context of a SOAP envelope.
Diffusion en continuStreaming Spécifie si la diffusion en continu est prise en charge pour les messages entrants et sortants.Specifies whether streaming is supported for incoming and outgoing messages. Utilisez la propriété TransferMode sur la liaison pour définir la valeur.Use the TransferMode property on the binding to set the value. Les valeurs autorisées incluent :The allowable values include:
- Buffered : Les messages de demande et de réponse sont mis en mémoire tampon.- Buffered: The request and response messages are both buffered.
- Streamed : Les messages de demande et de réponse sont transmis en continu.- Streamed: The request and response messages are both streamed.
- StreamedRequest : Le message de demande est transmis en continu et le message de réponse est mis en mémoire tampon.- StreamedRequest: The request message is streamed and the response message is buffered.
- StreamedResponse : Le message de demande est mis en mémoire tampon et le message de réponse est transmis en continu.- StreamedResponse: The request message is buffered and the response message is streamed.

Voir aussiSee also