Protocoles de services Web pris en charge par des liaisons d’interopérabilité fournies par le système
Windows Communication Foundation (WCF) a été élaboré pour interagir avec les services web qui prennent en charge un ensemble de spécifications connues sous le nom de spécifications de services web. Pour simplifier la configuration de service afin d’obtenir les meilleures pratiques d’interopérabilité, WCF introduit trois liaisons interopérables fournies par le système : System.ServiceModel.BasicHttpBinding, System.ServiceModel.WSHttpBinding et System.ServiceModel.WSDualHttpBinding. Afin de permettre l’interopérabilité avec les standards OASIS (Organization for the Advancement of Structured Information Standards), WCF inclut une liaison interopérable fournie par le système : System.ServiceModel.WS2007HttpBinding. Pour la publication de métadonnées, WCF inclut deux liaisons interopérables fournies par le système : <mexHttpBinding> et <mexHttpsBinding>. Cette rubrique répertorie les spécifications prises en charge par les liaisons interopérable fournies par le système.
Protocoles de services Web pris en charge par basicHttpBinding, wsHttpBinding, ws2007HttpBinding et wsDualHttpBinding Bindings
Toutes les liaisons
Les liaisons <basicHttpBinding>, <wsHttpBinding> et <ws2007HttpBinding> prennent en charge les protocoles suivants.
Notes
Pour plus d’informations sur les liaisons utilisées pour publier des métadonnées, consultez la section « Liaisons de métadonnées fournies par le système » développée ultérieurement dans cette rubrique.
Category | Protocole | Spécification et utilisation |
---|---|---|
Transport | HTTP 1.1 | HTTP 1.1BasicHttpBinding , WSHttpBinding et WS2007HttpBinding utilisent les transports HTTP et HTTPS. |
Messagerie | MTOM | MTOMbasicHttpBinding , wsHttpBinding et ws2007HttpBinding prennent en charge MTOM (Message Transmission Optimization Mechanism). Non utilisé par défaut. Pour utiliser MTOM, affectez messageEncoding à l'attribut "Mtom" .Exemple : <wsHttpBinding> <binding messageEncoding="Mtom"/> </wsHttpBinding> |
Métadonnées | WSDL 1.1 | WSDL 1.1 WCF utilise WSDL (Web Services Description Language) pour décrire les services. |
Métadonnées | WS-Policy | WS-Policy WCF utilise la spécification WS-Policy avec des assertions spécifiques au domaine pour décrire des spécifications de service et des fonctions. |
Métadonnées | WS-Policy 1.5 | WS-Policy 1.5 WCF utilise la spécification WS-Policy avec des assertions spécifiques au domaine pour décrire des spécifications de service et des fonctions. |
Métadonnées | WS-PolicyAttachment | WS-PolicyAttachment WCF implémente WS-PolicyAttachment pour joindre des expressions de stratégie à différentes portées dans WSDL (Web Services Description Language). |
Métadonnées | WS-MetadataExchange | WS-MetadataExchange WCF implémente WS-MetadataExchange pour récupérer le schéma XML, WSDL et WS-Policy. |
basicHttpBinding
Category | Protocole | Spécification et utilisation |
---|---|---|
Messagerie | SOAP 1,1 | SOAP 1,1 Conformément à Basic Profile 1.1, l'élément basicHttpBinding implémente le protocole de messagerie SOAP 1.1. |
Sécurité | WSS SOAP Message Security 1.0 | WSS SOAP Message Security 1.0 Conformément à Basic Security Profile, l'élément basicHttpBinding implémente la spécification WSS (Web Services Security) SOAP Message Security 1.0 pour le nom d'utilisateur/mot de passe et la sécurité basée sur les certificats X.509.<basicHttpBinding> <binding name="Binding1"> <security mode="TransportWithMessageCredential | "Message" .../> </binding> </basicHttpBinding> |
Sécurité | WSS SOAP Message Security UsernameToken Profile 1.0 | WSS SOAP Message Security UsernameToken Profile 1.0<basicHttpBinding> <binding name="Binding1"> <security mode="TransportWithMessageCredential"> <transport clientCredentialType="Basic"/> </security> </basicHttpBinding> |
Sécurité | WSS SOAP Message Security X.509 Certificate Token Profile 1.0 | WSS SOAP Message Security X.509 Certificate Token Profile 1.0<basicHttpBinding> <security mode="Message"> <message clientCredentialType="Certificate"/> </security> </basicHttpBinding> |
wsHttpBinding, ws2007HttpBinding et wsDualHttpBinding
Category | Protocole | Spécification et utilisation |
---|---|---|
Messagerie | SOAP 1.2 | Primer Infrastructure de messagerie (page pouvant être en anglais) Compléments (y compris la liaison HTTP) |
Messagerie | WS-Addressing 2005/08 | Web Services Addressing 1.0 – Core Web Services Addressing 1.0 - SOAP (page pouvant être en anglais) wsHttpBinding , ws2007HttpBinding et wsDualHttpBinding implémentent la recommandation W3C (World Wide Web Consortium) WS-Addressing pour activer la messagerie asynchrone, la corrélation de messages et les mécanismes d’adressage indépendant du transport.WCF ne prend pas en charge le chiffrement des en-têtes WS-Addressing bien que cela soit autorisé par les spécifications WS-*. |
Messagerie | WS-Addressing 1.0 - Métadonnées | La prise en charge de WS-Addressing 1.0 - Métadonnées pour ce protocole est activée en définissant la version de stratégie dans le comportement ServiceMetadata - avec la version 1.2 (valeur par défaut), la description wsdl est conforme à WS-Addressing wsdl, avec 1.5, la description wsdl est compatible avec les métadonnées ws-addressing. WCF ne prend pas en charge le chiffrement des en-têtes WS-Addressing bien que cela soit autorisé par les spécifications WS-*. |
Sécurité | WSS SOAP Message Security 1.0 | WSS SOAP Message Security 1.0 Utilisé lorsque l'attribut securityMode a la valeur "wsSecurityOverHttp" (valeur par défaut) et que les paramètres sont configurés à l'aide d'un élément enfant wsSecurity .<wsHttpBinding> <binding name="myBinding"> <security mode="Message" .../> </binding> </wsHttpBinding> |
Sécurité | WSS SOAP Message Security UsernameToken Profile 1.1 | WSS SOAP Message Security UsernameToken Profile 1.0 Utilisé lorsque l'attribut wsSecurity de l'élément authenticationMode a la valeur "Username".<wsHttpBinding> <binding name="MyBinding"> <security mode="Message> <message clientCredentialType="UserName negotiateServiceCredential="false" establishSecurityContext="false"/> </security> </binding> </wsHttpBinding> |
Sécurité | WSS SOAP Message Security X.509 Certificate Token Profile 1.1 | WSS SOAP Message Security X.509 Certificate Token Profile 1.1 Utilisé pour la protection des messages lorsque l'attribut wsSecurity de l'élément authenticationMode a la valeur "Username", "Certificate" ou "None". Il est par ailleurs utilisé pour l'authentification du client lorsque l'attribut wsSecurity de l'élément authenticationMode a la valeur "Certificate".<wsHttpBinding> <binding name="MyBinding"> <security mode="Message> <message clientCredentialType="Certificate" negotiateServiceCredential="false" establishSecurityContext="false"/> </security> </binding> </wsHttpBinding> |
Sécurité | WSS SOAP Message Security Kerberos Token Profile 1.1 | WSS SOAP Message Security Kerberos Token Profile 1.1 Utilisé pour l'authentification et la protection des messages lorsque l'attribut wsSecurity de l'élément authenticationMode a la valeur "Windows".<wsHttpBinding> <binding name="MyBinding"> <security mode="Message> <message clientCredentialType="Windows" negotiateServiceCredential="false" establishSecurityContext="false"/> </security> </binding> </wsHttpBinding> |
Sécurité | WS-SecureConversation | WS-SecureConversation Utilisé pour fournir une session sécurisée lorsque l'attribut security/@mode a la valeur "Message" et l'attribut message/@establishSecurityContext a la valeur "true" (valeur par défaut). |
Sécurité | WS-Trust | WS-Trust Utilisé par WS-SecureConversation (voir ci-dessus). |
Messagerie fiable | WS-ReliableMessaging | WS-ReliableMessaging Utilisé lorsque la liaison est configurée pour utiliser reliableSession .<wsHttpBinding> <binding name="myBinding"> <reliableSession/> </binding> </wsHttpBinding> |
Transactions | WS-AtomicTransaction | WS-AtomicTransaction À utiliser pour la communication entre les gestionnaires de transactions. Les clients et les services WCF utilisent systématiquement les gestionnaires de transactions locaux. |
Transactions | WS-Coordination | WS-Coordination Utilisé pour transmettre le contexte de transaction lorsque l’attribut flowTransactions a la valeur "Allowed" ou "Required".<wsHttpBinding> <binding transactionFlow="true"/> </wsHttpBinding> |
wsFederationHttpBinding et ws2007FederationHttpBinding
Les éléments <wsFederationHttpBinding> et <ws2007FederationHttpBinding> sont introduits pour assurer la prise en charge des scénarios fédérés, dans lesquels un tiers émet un jeton permettant d’authentifier un client. Outre les protocoles utilisés par wsHttpBinding
, wsFederationHttpBinding
tire parti de :
WS-Trust
pour l'émission de jeton.WSS SAML (Security Assertions Markup Language) Token Profile 1.0 et 1.1 pour le format de jeton le plus fréquemment émis.
Exemple :
<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>
Pour plus d’informations, consultez Fédération.
Liaisons de métadonnées fournies par le système
Les tableaux suivants décrivent les protocoles pris en charge par les liaisons de métadonnées interopérables fournies par le système exposées par la classe System.ServiceModel.Description.MetadataExchangeBindings.
mexHttpBinding
La liaison <mexHttpBinding> prend en charge les protocoles suivants. Pour plus d’informations sur l’utilisation de cette liaison, consultez Publication des métadonnées.
Category | Protocole | Spécification et utilisation |
---|---|---|
Transport | HTTP 1.1 | HTTP 1.1 |
Messagerie | SOAP 1.2 | Primer Infrastructure de messagerie (page pouvant être en anglais) Compléments (y compris la liaison HTTP) |
Messagerie | WS-Addressing 2005/08 | Web Services Addressing 1.0 – Core Web Services Addressing 1.0 - SOAP (page pouvant être en anglais) |
Métadonnées | WS-MetadataExchange | WS-MetadataExchange WCF implémente WS-MetadataExchange pour récupérer le schéma XML, WSDL et WS-Policy. |
mexHttpsBinding
<mexHttpsBinding> prend en charge les protocoles suivants. Pour plus d’informations sur l’utilisation de cette liaison, consultez Publication des métadonnées.
Category | Protocole | Spécification et utilisation |
---|---|---|
Transport | HTTP 1.1 | HTTP 1.1 La sécurité de transport est activée. |
Messagerie | SOAP 1.2 | Primer Infrastructure de messagerie (page pouvant être en anglais) Compléments (y compris la liaison HTTP) |
Messagerie | WS-Addressing 2005/08 | Web Services Addressing 1.0 – Core Web Services Addressing 1.0 - SOAP (page pouvant être en anglais) |
Métadonnées | WS-MetadataExchange | WS-MetadataExchange WCF implémente WS-MetadataExchange pour récupérer le schéma XML, WSDL et WS-Policy. |