Protocolos de servicios Web compatibles con los enlaces de interoperabilidad proporcionados por el sistema

Windows Communication Foundation (WCF) se crea para interoperar con los servicios web que admiten un conjunto de especificaciones conocido como las "especificaciones de los servicios web". Para simplificar la configuración de servicio para los procedimientos recomendados de interoperabilidad, WCF introduce tres enlaces proporcionados por el sistema interoperables: System.ServiceModel.BasicHttpBinding, System.ServiceModel.WSHttpBinding y System.ServiceModel.WSDualHttpBinding. Para la interoperabilidad con estándares OASIS (Organization for the Advancement of Structures Information Standards, organización para el avance de estándares de información estructurada), WCF incluye un enlace proporcionado por el sistema interoperable: System.ServiceModel.WS2007HttpBinding. Para la publicación de metadatos, WCF incluye dos enlaces proporcionados por el sistema interoperables: <mexHttpBinding> y <mexHttpsBinding>. En este tema se enumeran las especificaciones que admiten los enlaces interoperables proporcionados por el sistema.

Protocolos de servicios Web admitidos por basicHttpBinding, wsHttpBinding, ws2007HttpBinding y enlaces wsDualHttpBinding

Todos los enlaces

Los enlaces <basicHttpBinding>, <wsHttpBinding> y <ws2007HttpBinding> admiten los protocolos siguientes.

Nota

Para obtener información sobre los enlaces usados para publicar metadatos, consulte la sección "Enlaces de metadatos proporcionados por el sistema" más adelante en este tema.

Category Protocolo Especificación y uso
Transporte HTTP 1.1 HTTP 1.1

BasicHttpBinding, WSHttpBindingy WS2007HttpBinding utilizan los transportes HTTP y HTTPS.
Mensajería MTOM MTOM

basicHttpBinding, wsHttpBindingy ws2007HttpBinding admiten el Mecanismo de optimización de transmisión de mensajes (MTOM). No utilizado de manera predeterminada: Para utilizar MTOM, defina el atributo messageEncoding como "Mtom".

Ejemplo:

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

WCF utiliza el lenguaje de descripción de servicios Web (WSDL) para describir servicios.
Metadatos WS-Policy WS-Policy

WCF utiliza la especificación WS-Policy junto con las aserciones específicas del dominio para describir requisitos y funciones de servicios.
Metadatos WS-Policy 1.5 WS-Policy 1.5

WCF utiliza la especificación WS-Policy junto con las aserciones específicas del dominio para describir requisitos y funciones de servicios.
Metadatos WS-PolicyAttachment WS-PolicyAttachment

WCF implementa WS-PolicyAttachment para asociar expresiones de directivas en varios ámbitos en el lenguaje de descripción de servicios Web (WSDL).
Metadatos WS-MetadataExchange WS-MetadataExchange

WCF implementa WS-MetadataExchange para recuperar el esquema XML, WSDL y WS-Policy.

basicHttpBinding

Category Protocolo Especificación y uso
Mensajería SOAP 1,1 SOAP 1,1

De acuerdo con Basic Profile 1.1, el elemento basicHttpBinding implementa el protocolo de mensajes SOAP 1.1.
Seguridad WSS SOAP Message Security 1.0 WSS SOAP Message Security 1.0

De acuerdo con el perfil de seguridad básico, el elemento basicHttpBinding implementa la especificación de seguridad de mensaje SOAP 1.0 de Seguridad de Servicios web (WSS) para el nombre de usuario/contraseña y la seguridad basada en X.509.

<basicHttpBinding> <binding name="Binding1"> <security mode="TransportWithMessageCredential &#124; "Message" .../> </binding> </basicHttpBinding>
Seguridad Perfil UsernameToken 1.0 de seguridad de mensaje WSS SOAP Perfil UsernameToken 1.0 de seguridad de mensaje WSS SOAP

<basicHttpBinding> <binding name="Binding1"> <security mode="TransportWithMessageCredential"> <transport clientCredentialType="Basic"/> </security> </basicHttpBinding>
Seguridad Perfil de token de certificado X.509 de seguridad de mensaje WSS SOAP 1.1 Perfil de token de certificado X.509 de seguridad de mensaje WSS SOAP 1.1

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

wsHttpBinding, ws2007HttpBinding y wsDualHttpBinding

Category Protocolo Especificación y uso
Mensajería SOAP 1.2 Primer

Marco de mensajería

Adjuntos (incluido el enlace HTTP)
Mensajería WS-Addressing 2005/08 Direccionamiento de servicios Web 1.0 - Núcleo

Web Services Addressing 1.0 - SOAP

wsHttpBinding, ws2007HttpBindingy wsDualHttpBinding implementan la recomendación WS-Addressing del World Wide Web Consortium (W3C) para habilitar la mensajería asincrónica, la correlación de mensajes y mecanismos de direccionamiento independiente del transporte.

WCF no admite el cifrado de encabezados de WS-Addressing aunque lo permiten las especificaciones de WS-*.
Mensajería WS-Addressing 1.0 - Metadatos Metadatos de WS-Addressing 1.0 La compatibilidad con este protocolo se habilita estableciendo la versión de la directiva en el comportamiento de ServiceMetadata, con policyversion establecido en 1.2 (el valor predeterminado), la descripción de wsdl es conforme a la especificación WS-Addressing wsdl, con policyversion establecido en 1.5, la descripción de wsdl es conforme a los metadatos de la especificación ws-addressing.

WCF no admite el cifrado de encabezados de WS-Addressing aunque lo permiten las especificaciones de WS-*.
Seguridad WSS SOAP Message Security 1.0 WSS SOAP Message Security 1.0

Utilícese cuando el atributo securityMode está definido como "wsSecurityOverHttp" (valor predeterminado) y los parámetros se configuran utilizando un elemento secundario wsSecurity.

<wsHttpBinding> <binding name="myBinding"> <security mode="Message" .../> </binding> </wsHttpBinding>
Seguridad Perfil UsernameToken 1.1 de seguridad de mensaje WSS SOAP Perfil UsernameToken 1.0 de seguridad de mensaje WSS SOAP

Utilice cuando el atributo wsSecurity del elemento authenticationMode esté definido como "Nombre de usuario."

<wsHttpBinding> <binding name="MyBinding"> <security mode="Message> <message clientCredentialType="UserName negotiateServiceCredential="false" establishSecurityContext="false"/> </security> </binding> </wsHttpBinding>
Seguridad WSS SOAP Message Security X.509 Certificate Token Profile 1.1 WSS SOAP Message Security X.509 Certificate Token Profile 1.1

Utilice para la protección del mensaje cuando el atributo wsSecurity del elemento authenticationMode está definido como "Nombre de usuario", "Certificado" o "Ninguno." Además, utilice esto para la autenticación del cliente cuando el atributo del wsSecurity de elemento authenticationMode se defina como "Certificado".

<wsHttpBinding> <binding name="MyBinding"> <security mode="Message> <message clientCredentialType="Certificate" negotiateServiceCredential="false" establishSecurityContext="false"/> </security> </binding> </wsHttpBinding>
Seguridad Perfil de token de Kerberos 1.1 de seguridad de mensaje WSS SOAP Perfil de token de Kerberos 1.1 de seguridad de mensaje WSS SOAP

Utilice para la autenticación y protección de mensajes cuando el atributo wsSecurity del elemento authenticationMode esté definido en "Windows".

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

Utilice para proporcionar una sesión segura cuando el atributo security/@mode esté establecido en "Mensaje" y el atributo message/@establishSecurityContext está establecido en "true" (valor predeterminado).
Seguridad WS-Trust WS-Trust

Utilizado por WS-SecureConversation (vea arriba).
Mensajería de confianza WS-ReliableMessaging WS-ReliableMessaging

Utilícese cuando se configura el enlace para que use reliableSession.

<wsHttpBinding> <binding name="myBinding"> <reliableSession/> </binding> </wsHttpBinding>
Transacciones Transacción WS-Atomic Transacción WS-Atomic

Se usa para la comunicación entre administradores de transacciones. Los clientes y servicios WCF siempre usan administradores de transacciones locales.
Transacciones WS-Coordination WS-Coordination

Utilícese para hacer fluir el contexto de transacción cuando el atributo flowTransactions se establece en "Allowed" (Permitido) o "Required" (Obligatorio).

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

wsFederationHttpBinding y ws2007FederationHttpBinding

Los elementos <wsFederationHttpBinding> y <ws2007FederationHttpBinding> se introducen para proporcionar compatibilidad con escenarios federados, donde un tercero emite un token utilizado para autenticar a un cliente. Además de los protocolos utilizados por wsHttpBinding, wsFederationHttpBinding utiliza:

  • WS-Trust para la emisión de tokens.

  • El Perfil 1.0 y 1.1 de tokens de lenguaje de marcado de aserciones de seguridad (SAML) WSS para el formato de tokens emitidos más comúnmente.

Ejemplo:

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

Para obtener más información, consulte Federación.

Enlaces de metadatos proporcionados por el sistema

Las tablas siguientes describen los protocolos admitidos por los enlaces de metadatos interoperables proporcionados por el sistema expuestos por la clase System.ServiceModel.Description.MetadataExchangeBindings.

mexHttpBinding

El enlace <mexHttpBinding> admite los siguientes protocolos. Para obtener más información sobre el uso de este enlace, consulte Publicación de metadatos.

Category Protocolo Especificación y uso
Transporte HTTP 1.1 HTTP 1.1
Mensajería SOAP 1.2 Primer

Marco de mensajería

Adjuntos (incluido el enlace HTTP)
Mensajería WS-Addressing 2005/08 Direccionamiento de servicios Web 1.0 - Núcleo

Web Services Addressing 1.0 - SOAP
Metadatos WS-MetadataExchange WS-MetadataExchange

WCF implementa WS-MetadataExchange para recuperar el esquema XML, WSDL y WS-Policy.

mexHttpsBinding

<mexHttpsBinding> admite los siguientes protocolos. Para obtener más información sobre el uso de este enlace, consulte Publicación de metadatos.

Category Protocolo Especificación y uso
Transporte HTTP 1.1 HTTP 1.1

La seguridad de transporte está habilitada.
Mensajería SOAP 1.2 Primer

Marco de mensajería

Adjuntos (incluido el enlace HTTP)
Mensajería WS-Addressing 2005/08 Direccionamiento de servicios Web 1.0 - Núcleo

Web Services Addressing 1.0 - SOAP
Metadatos WS-MetadataExchange WS-MetadataExchange

WCF implementa WS-MetadataExchange para recuperar el esquema XML, WSDL y WS-Policy.

Consulte también