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.1BasicHttpBinding , WSHttpBinding y WS2007HttpBinding utilizan los transportes HTTP y HTTPS. |
Mensajería | MTOM | MTOMbasicHttpBinding , wsHttpBinding y 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 | "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 , ws2007HttpBinding y 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. |