REVISIÓN: Se produce una excepción System.NotSupportedException cuando ejecuta un servicio IIS aloja el servicio WCF que utiliza un certificado de cliente para la autenticación SSL

Trabaje en cualquier lugar desde cualquier dispositivo con Microsoft 365

Actualice a Microsoft 365 para trabajar en cualquier lugar con las características y las actualizaciones más recientes.

Actualizar ahora

Síntomas

Imagine el siguiente escenario:

  • Crear un servicio de Windows Communication Foundation (WCF) que está alojado en los servicios de Internet Information Server (IIS).

  • Utilice la clase WebScriptEnablingBehavior en el servicio WCF.

  • Configurar el servicio WCF para usar un certificado de cliente para la autenticación de Secure Sockets Layer (SSL). Para ello, Establece la propiedad ClientCredentialType en el archivo Web.config para el certificado.

En este escenario, cuando se ejecuta el servicio WCF, se produce una excepción System.NotSupportedException y recibirá un mensaje de error es similar a la siguiente:

La configuración de SSL para el servicio 'Ninguno' no coinciden con los de los servicios de IIS 'Ssl, SslNegotiateCert, SslRequireCert, SslMapCert, Ssl128'.

Causa

Este problema se produce porque algunas propiedades de la instancia de HttpTransportBindingElement no se copian en los extremos de proxy de javascript generado automáticamente.

Solución

Ahora hay una revisión compatible de Microsoft. Sin embargo, se pretende corregir el problema que describe este artículo. Aplíquela sólo a sistemas que experimenten este problema específico.

Para resolver este problema, póngase en contacto con los servicios de soporte técnico de Microsoft para obtener la revisión. Para obtener una lista completa de números de teléfono de los servicios de soporte al cliente de Microsoft e información acerca de los costos de soporte técnico, visite el siguiente sitio Web de Microsoft:

http://support.microsoft.com/contactus/?ws=supportNota: En casos especiales, los costos derivados normalmente de las llamadas al soporte técnico pueden cancelarse si un profesional de soporte técnico de Microsoft determina que una actualización específica resolverá el problema. Los costos habituales de soporte se aplicarán a las preguntas de soporte técnico adicionales y problemas que no guarden relación con la actualización en cuestión.

Requisitos previos

Debe tener el.NET Framework 3.5 Service Pack 1 (SP1) instalado para poder aplicar este hotfix.

Requisito de reinicio

No es necesario que reinicie el equipo después de instalar la revisión.

Información de reemplazo de revisión

Este hotfix no sustituye a otras revisiones.
La versión en inglés de esta revisión tiene los atributos de archivo (o atributos del archivo más reciente) mostrados en la tabla siguiente. Las fechas y horas de estos archivos se muestran en la hora Universal coordinada (UTC). Al ver la información del archivo, se convierte en hora local. Para encontrar la diferencia entre la hora UTC y la hora local, utilice la ficha Zona horaria en el elemento de Fecha y hora del Panel de control.

versión x86 para Windows Server 2000, Windows Server 2003 y Windows XP

Nombre del archivo

Versión del archivo

Tamaño de archivo

Fecha

Hora

Plataforma

System.servicemodel.web.dll

3.5.594.4152

569,344

22-Jul-2009

01:51

x86


versión x64 para Windows Server 2000, Windows Server 2003 y Windows XP

Nombre del archivo

Versión del archivo

Tamaño de archivo

Fecha

Hora

Plataforma

System.servicemodel.web.dll

3.5.594.4152

491,520

22-Jul-2009

02:13

x64


Versión basada en Itanium de Windows Server 2000, Windows Server 2003 y Windows XP

Nombre del archivo

Versión del archivo

Tamaño de archivo

Fecha

Hora

Plataforma

System.servicemodel.web.dll

3.5.594.4152

491,520

22-Jul-2009

02:26

IA-64


Estado

Microsoft ha confirmado que se trata de un problema de los productos de Microsoft que se enumeran en la sección "Aplicable a".

Solución alternativa

Para evitar este problema, alojadas en el servidor el servicio WCF en lugar de alojar el servicio en IIS.

Más información

Información de volcado de pila

System.ServiceModel.dll!System.ServiceModel.Channels.HttpsChannelListener.ApplyHostedContext(System.ServiceModel.Activation.VirtualPathExtension virtualPathExtension, bool isMetadataListener) + 0x1b7 bytes    

System.ServiceModel.dll!System.ServiceModel.Channels.HttpsTransportBindingElement.BuildChannelListener<System.__Canon>(System.ServiceModel.Channels.BindingContext context) + 0x69 bytes

System.ServiceModel.dll!System.ServiceModel.Channels.BindingContext.BuildInnerChannelListener<System.__Canon>() + 0x5f bytes

System.ServiceModel.dll!System.ServiceModel.Channels.MessageEncodingBindingElement.InternalBuildChannelListener<System.__Canon>(System.ServiceModel.Channels.BindingContext context) + 0x66 bytes

System.ServiceModel.Web.dll!System.ServiceModel.Channels.WebScriptMetadataMessageEncodingBindingElement.BuildChannelListener<System.__Canon>(System.ServiceModel.Channels.BindingContext context) + 0x4b bytes

System.ServiceModel.dll!System.ServiceModel.Channels.BindingContext.BuildInnerChannelListener<System.__Canon>() + 0x5f bytes

System.ServiceModel.dll!System.ServiceModel.Channels.Binding.BuildChannelListener<System.__Canon>(System.Uri listenUriBaseAddress, string listenUriRelativeAddress, System.ServiceModel.Description.ListenUriMode listenUriMode, System.ServiceModel.Channels.BindingParameterCollection parameters) + 0xa6 bytes

System.ServiceModel.dll!System.ServiceModel.Channels.Binding.BuildChannelListener<System.__Canon>(System.Uri listenUriBaseAddress, System.ServiceModel.Channels.BindingParameterCollection parameters) + 0x7c bytes

System.ServiceModel.Web.dll!System.ServiceModel.Description.WebScriptEnablingBehavior.AddMetadataEndpoint(System.ServiceModel.Description.ServiceEndpoint endpoint, System.ServiceModel.Dispatcher.EndpointDispatcher endpointDispatcher, bool debugMode) + 0x698 bytes

System.ServiceModel.Web.dll!System.ServiceModel.Description.WebScriptEnablingBehavior.ApplyDispatchBehavior(System.ServiceModel.Description.ServiceEndpoint endpoint, System.ServiceModel.Dispatcher.EndpointDispatcher endpointDispatcher) + 0x60 bytes

¿Necesita más ayuda?

Ampliar sus conocimientos
Explorar los cursos
Obtener nuevas características primero
Unirse a Microsoft Insider

¿Le ha sido útil esta información?

¡Gracias por sus comentarios!

Gracias por sus comentarios. Quizá le interese ponerse en contacto con uno de nuestros agentes de soporte de Office.

×