Freigeben über


Webdienstprotokolle, die von System-Provided Interoperabilitätsbindungen unterstützt werden

Windows Communication Foundation (WCF) wird entwickelt, um mit Webdiensten zu arbeiten, die eine Reihe von Spezifikationen unterstützen, die als Webdienstspezifikationen bezeichnet werden. Um die Dienstkonfiguration für bewährte Methoden für die Interoperabilität zu vereinfachen, führt WCF drei interoperable System-bereitgestellte Bindungen ein: System.ServiceModel.BasicHttpBinding, , System.ServiceModel.WSHttpBindingund System.ServiceModel.WSDualHttpBinding. Für die Interoperabilität mit den Standards der Organization for the Advancement of Structured Information Standards (OASIS) umfasst WCF eine interoperable, systembereitgestellte Bindung: System.ServiceModel.WS2007HttpBinding. Für die Metadatenveröffentlichung umfasst WCF zwei interoperable systembezogene Bindungen: <mexHttpBinding> und <mexHttpsBinding>. In diesem Thema werden Spezifikationen aufgeführt, die vom System bereitgestellte interoperable Bindungen unterstützen.

Von basicHttpBinding-, wsHttpBinding-, ws2007HttpBinding- und wsDualHttpBinding-Bindungen unterstützte Webdienstprotokolle

Alle Bindungen

Die <basicHttpBinding>, <wsHttpBinding> und <ws2007HttpBinding>-Bindungen unterstützen die folgenden Protokolle.

Hinweis

Informationen zu Bindungen, die zum Veröffentlichen von Metadaten verwendet werden, finden Sie im Abschnitt "System-Provided Metadatenbindungen" weiter unten in diesem Thema.

Kategorie Protokoll Spezifikation und Nutzung
Transport HTTP 1.1 HTTP 1.1

BasicHttpBinding, WSHttpBinding und WS2007HttpBinding verwenden die HTTP- und HTTPS-Protokolle.
Nachrichtenübermittlung MTOM MTOM

basicHttpBinding, wsHttpBindingund ws2007HttpBinding unterstützen den Mechanismus für die Nachrichtenübertragungsoptimierung (Message Transmission Optimization Mechanism, MTOM). Wird standardmäßig nicht verwendet. Um MTOM zu verwenden, legen Sie das messageEncoding Attribut auf "Mtom".

Beispiel:

<wsHttpBinding> <binding messageEncoding="Mtom"/> </wsHttpBinding>
Metadaten WSDL 1.1 WSDL 1.1

WCF verwendet Webdienstbeschreibungssprache (Web Services Description Language, WSDL), um Dienste zu beschreiben.
Metadaten WS-Richtlinie WS-Richtlinie

WCF verwendet die WS-Policy Spezifikation zusammen mit domänenspezifischen Assertionen, um Dienstanforderungen und -funktionen zu beschreiben.
Metadaten WS-Richtlinie 1.5 WS-Policy 1.5

WCF verwendet die WS-Policy Spezifikation zusammen mit domänenspezifischen Assertionen, um Dienstanforderungen und -funktionen zu beschreiben.
Metadaten WS-PolicyAttachment WS-PolicyAttachment

WCF implementiert WS-PolicyAttachment zum Anfügen von Richtlinienausdrücken in verschiedenen Bereichen in der Webdienstbeschreibungssprache (Web Services Description Language, WSDL).
Metadaten WS-MetadataExchange WS-MetadataExchange

WCF implementiert WS-MetadataExchange zum Abrufen von XML-Schemas, WSDL und WS-Richtlinie.

basicHttpBinding

Kategorie Protokoll Spezifikation und Nutzung
Nachrichtenübermittlung SOAP 1.1 SOAP 1.1

Gemäß Basic Profile 1.1 implementiert das basicHttpBinding Element das SOAP 1.1-Nachrichtenprotokoll.
Sicherheit WSS SOAP Message Security 1.0 WSS SOAP Message Security 1.0

Gemäß dem Standardsicherheitsprofil implementiert das basicHttpBinding Element die SOAP Message Security 1.0-Spezifikation für Benutzernamen/Kennwort und X.509-basierte Sicherheit.

<basicHttpBinding> <binding name="Binding1"> <security mode="TransportWithMessageCredential &#124; "Message" .../> </binding> </basicHttpBinding>
Sicherheit 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>
Sicherheit WSS SOAP Message Security X.509-Zertifikattokenprofil 1.0 WSS SOAP Message Security X.509-Zertifikattokenprofil 1.0

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

wsHttpBinding, ws2007HttpBinding und wsDualHttpBinding

Kategorie Protokoll Spezifikation und Nutzung
Nachrichtenübermittlung SOAP 1.2 Fibel

Nachrichtenframework

Adjuncts (einschließlich HTTP-Bindung)
Nachrichtenübermittlung WS-Adressierung 2005/08 Webdienste adressieren 1.0 – Kern

Webdienste adressieren 1.0 – SOAP

Die Implementierungen von wsHttpBinding, ws2007HttpBinding und wsDualHttpBinding entsprechen der Empfehlung WS-Addressing des World Wide Web Consortiums (W3C), die asynchrone Nachrichten, Nachrichtenkorrelation und transportneutrale Adressierungsmechanismen ermöglicht.

WCF unterstützt keine Verschlüsselung von WS-Addressing Headern, obwohl dies durch die WS-*-Spezifikationen zulässig ist.
Nachrichtenübermittlung WS-Addressing 1.0 – Metadaten WS-Addressing 1.0-Metadaten Die Unterstützung für dieses Protokoll wird aktiviert, indem die Richtlinienversion im ServiceMetadata-Verhalten festgelegt wird – wenn die Richtlinienversion auf 1.2 (Standardeinstellung) festgelegt ist, ist die WSDL-Beschreibung mit WS-Addressing WSDL kompatibel; ist die Richtlinienversion auf 1.5 festgelegt, ist die WSDL-Beschreibung mit WS-Adressierungsmetadaten kompatibel.

WCF unterstützt keine Verschlüsselung von WS-Addressing Headern, obwohl dies durch die WS-*-Spezifikationen zulässig ist.
Sicherheit WSS SOAP Message Security 1.0 WSS SOAP Message Security 1.0

Wird verwendet, wenn das securityMode Attribut auf "wsSecurityOverHttp" (Standard) festgelegt ist und Parameter mithilfe eines wsSecurity untergeordneten Elements konfiguriert werden.

<wsHttpBinding> <binding name="myBinding"> <security mode="Message" .../> </binding> </wsHttpBinding>
Sicherheit WSS SOAP-Nachrichtensicherheit Benutzername-Token-Profil 1.1 WSS SOAP Message Security UsernameToken Profile 1.0

Wird verwendet, wenn das Attribut des wsSecurityauthenticationMode Elements auf "Benutzername" festgelegt ist.

<wsHttpBinding> <binding name="MyBinding"> <security mode="Message> <message clientCredentialType="UserName negotiateServiceCredential="false" establishSecurityContext="false"/> </security> </binding> </wsHttpBinding>
Sicherheit WSS SOAP Message Security X.509-Zertifikattokenprofil 1.1 WSS SOAP Message Security X.509-Zertifikattokenprofil 1.1

Wird für den Nachrichtenschutz verwendet, wenn das wsSecurity Attribut des authenticationMode Elements auf "Username", "Certificate" oder "None" festgelegt ist. Verwenden Sie dies außerdem für die Clientauthentifizierung, wenn das Attribut des wsSecurityauthenticationMode Elements auf "Certificate" festgelegt ist.

<wsHttpBinding> <binding name="MyBinding"> <security mode="Message> <message clientCredentialType="Certificate" negotiateServiceCredential="false" establishSecurityContext="false"/> </security> </binding> </wsHttpBinding>
Sicherheit WSS SOAP Message Security Kerberos Token Profile 1.1 WSS SOAP Message Security Kerberos Token Profile 1.1

Wird für die Authentifizierung und den Nachrichtenschutz verwendet, wenn das wsSecurity Attribut des authenticationMode Elements auf "Windows" festgelegt ist.

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

Wird verwendet, um eine sichere Sitzung bereitzustellen, wenn das security/@mode Attribut auf "Message" festgelegt ist und das message/@establishSecurityContext Attribut auf "true" (Standardeinstellung) festgelegt ist.
Sicherheit WS-Trust WS-Trust

Wird von WS-SecureConversation verwendet (siehe oben).
Zuverlässiges Messaging WS-ReliableMessaging WS-ReliableMessaging

Wird verwendet, wenn die Bindung für die Verwendung reliableSessionkonfiguriert ist.

<wsHttpBinding> <binding name="myBinding"> <reliableSession/> </binding> </wsHttpBinding>
Transaktionen WS-AtomicTransaction WS-AtomicTransaction

Wird für die Kommunikation zwischen Transaktionsmanagern verwendet. WCF-Clients und -Dienste verwenden immer lokale Transaktionsmanager.
Transaktionen WS-Coordination WS-Koordination

Wird verwendet, um den Transaktionskontext zu übertragen, wenn das flowTransactions-Attribut auf "erlaubt" oder "erforderlich" festgelegt ist.

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

wsFederationHttpBinding und ws2007FederationHttpBinding

Die <wsFederationHttpBinding> - und <ws2007FederationHttpBinding-Elemente> werden eingeführt, um Unterstützung für Verbundszenarien bereitzustellen, in denen ein Drittanbieter ein Token ausgibt, das zum Authentifizieren eines Clients verwendet wird. Zusätzlich zu den Protokollen, die von wsHttpBinding verwendet werden, nutzt wsFederationHttpBinding:

  • WS-Trust für die Tokenausgabe.

  • WSS Security Assertions Markup Language (SAML)-Tokenprofil 1.0 und 1.1 für das am häufigsten ausgestellte Tokenformat.

Beispiel:

<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>

Weitere Informationen finden Sie unter Verbund.

System-Provided Metadatenbindungen

In den folgenden Tabellen werden die Protokolle beschrieben, die von den vom System bereitgestellten interoperablen Metadatenbindungen unterstützt werden, die von der System.ServiceModel.Description.MetadataExchangeBindings Klasse verfügbar gemacht werden.

mexHttpBinding

Die <mexHttpBinding-Bindung> unterstützt die folgenden Protokolle. Weitere Informationen zur Verwendung dieser Bindung finden Sie unter Veröffentlichen von Metadaten.

Kategorie Protokoll Spezifikation und Nutzung
Transport HTTP 1.1 HTTP 1.1
Nachrichtenübermittlung SOAP 1.2 Fibel

Nachrichtenframework

Adjuncts (einschließlich HTTP-Bindung)
Nachrichtenübermittlung WS-Adressierung 2005/08 Webdienste adressieren 1.0 – Kern

Webdienste adressieren 1.0 – SOAP
Metadaten WS-MetadataExchange WS-MetadataExchange

WCF implementiert WS-MetadataExchange zum Abrufen von XML-Schemas, WSDL und WS-Richtlinie.

mexHttpsBinding

<mexHttpsBinding> unterstützt die folgenden Protokolle. Weitere Informationen zur Verwendung dieser Bindung finden Sie unter Veröffentlichen von Metadaten.

Kategorie Protokoll Spezifikation und Nutzung
Transport HTTP 1.1 HTTP 1.1

Transportsicherheit ist aktiviert.
Nachrichtenübermittlung SOAP 1.2 Fibel

Nachrichtenframework

Adjuncts (einschließlich HTTP-Bindung)
Nachrichtenübermittlung WS-Adressierung 2005/08 Webdienste adressieren 1.0 – Kern

Webdienste adressieren 1.0 – SOAP
Metadaten WS-MetadataExchange WS-MetadataExchange

WCF implementiert WS-MetadataExchange zum Abrufen von XML-Schemas, WSDL und WS-Richtlinie.

Siehe auch