Los clientes no pueden realizar conexiones si requiere certificados de cliente en un sitio Web o si utiliza IAS en Windows Server 2003

Se aplica a: Microsoft Windows Server 2003 Datacenter Edition (32-bit x86)Microsoft Windows Server 2003 Enterprise Edition (32-bit x86)Microsoft Windows Server 2003 Standard Edition (32-bit x86)

Importante: Este artículo contiene información acerca de cómo modificar el registro. Asegúrese de hacer copia de seguridad del registro antes de modificarlo. Asegúrese de que sabe cómo restaurarlo si ocurre algún problema. Para obtener más información acerca de cómo hacer copia de seguridad, restaurar y modificar el registro, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:

Síntomas


Considere los escenarios siguientes.

Escenario 1

  • Tener un sitio Web de Microsoft Internet Information Services (IIS) 6.0 que utiliza el protocolo Secure Sockets Layer (SSL) para cifrar las conexiones de cliente.
  • Se selecciona la opción requerir certificados de cliente en el cuadro de diálogo Comunicaciones seguras del cuadro de diálogo Propiedades de WebSiteName .
En este escenario, puede experimentar los síntomas siguientes:
  • Clientes no pueden conectarse correctamente al sitio Web.
  • Se registra el siguiente suceso de advertencia en el equipo basado en Microsoft Windows Server 2003 que aloja el sitio Web:
Nota: De forma predeterminada, no se registran sucesos de advertencia de canal seguro (Schannel). Para obtener más información acerca de cómo configurar el registro de eventos de Schannel, vea la sección "Más información".

Escenario 2

Utilizar un equipo basado en Microsoft Windows Server 2003 que está ejecutando Microsoft Internet Authentication Service (IAS) para admitir la autenticación para una red inalámbrica. En este escenario, puede experimentar los síntomas siguientes:
  • El servidor IAS no puede autenticar correctamente a los clientes. Por lo tanto, los equipos cliente inalámbricos no pueden conectarse correctamente a la red inalámbrica.
  • Se registra un suceso de advertencia similar al siguiente en el servidor IAS:
  • Puede anotarse un suceso similar el suceso de advertencia siguiente en el servidor IAS:
Nota: De forma predeterminada, no se registran sucesos de advertencia de canal seguro (Schannel). Para obtener más información acerca de cómo configurar el registro de eventos de Schannel, vea la sección "Más información".

Causa


Este problema puede producirse si el servidor Web o el servidor IAS contiene muchas entradas en la lista de certificados raíz de confianza. El servidor envía una lista de entidades emisoras de certificados de confianza para el cliente si se cumplen las condiciones siguientes:
  • El servidor utiliza la seguridad de capa de transporte (TLS) o protocolo SSL para cifrar el tráfico de red.
  • Certificados de cliente son necesarios para la autenticación durante el proceso de autenticación mutuo.
Esta lista de entidades emisoras de certificados de confianza representa las autoridades desde la que el servidor puede aceptar un certificado de cliente. Para ser autenticado por el servidor, el cliente debe tener un certificado que está presente en la cadena de certificados a un certificado raíz de la lista del servidor.

Actualmente, el tamaño máximo de la lista de autoridades de certificados de confianza que admite el paquete de seguridad Schannel es 12,228 (0 x 3000) bytes.

Schannel crea la lista de entidades emisoras de certificados de confianza mediante la búsqueda en el almacén de entidades de certificación raíz de confianza en el equipo local. Cada certificado es de confianza para propósitos de autenticación de cliente se agrega a la lista. Si el tamaño de esta lista supera bytes 12,228, Schannel registra el identificador de suceso de advertencia 36885. A continuación, Schannel trunca la lista de certificados raíz de confianza y envía esta lista truncada en el equipo cliente.

Cuando el equipo cliente recibe la lista truncada de certificados raíz de confianza, el equipo cliente no puede tener un certificado que existe en la cadena de un emisor de certificados de confianza. Por ejemplo, el equipo cliente puede tener un certificado que corresponde a un certificado raíz de confianza que Schannel truncado de la lista de entidades emisoras de certificados de confianza. Por lo tanto, el servidor IAS no puede autenticar al cliente.

La revisión aumenta el búfer de seguridad Schannel a 16k. Si supera este límite, todavía tendrá problemas que se describen en la sección Síntomas de este artículo. Este cambio también se ha incluido con Windows Server 2008 y Windows Server 2008 R2. Las soluciones descritas a continuación se aplicarán también a Windows Server 2008 y Windows Server 2008 R2.


Solución


Información de la revisión

Ahora hay una revisión compatible de Microsoft. Sin embargo, se pretende corregir el problema que se describe en este artículo. Aplíquela sólo a sistemas que experimenten este problema específico. Esta revisión puede ser sometida a comprobaciones adicionales. Por lo tanto, si no se ve muy afectado por este problema, recomendamos que espere el próximo service pack de Windows Server 2003 que contenga este hotfix.

Para resolver este problema inmediatamente, 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:Nota: 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

Para aplicar este hotfix, debe tener Service Pack 1 (SP1) de Windows Server 2003 o Windows Server 2003 Service Pack 2 (SP2) instalado en el equipo. Para obtener más información acerca de cómo obtener el service pack más reciente para Windows Server 2003, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:

889100 cómo obtener el service pack más reciente para Windows Server 2003

Requisito de reinicio

Tendrá que reiniciar el equipo después de aplicar este hotfix.

Información de reemplazo de revisión

Este hotfix no sustituye a otras revisiones.

Información de archivo

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.
Windows Server 2003, versiones basadas en x86 con SP1
Nombre del archivoVersión del archivoTamaño de archivoFechaHoraPlataforma
Schannel.dll5.2.3790.2971144,89610-Jul-200717:27x86
Windows Server 2003, versiones basadas en x86 con SP2
Nombre del archivoVersión del archivoTamaño de archivoFechaHoraPlataforma
Schannel.dll5.2.3790.4115147.45610-Jul-200717:51x86
Windows Server 2003, versiones basadas en x64 con SP1
Nombre del archivoVersión del archivoTamaño de archivoFechaHoraPlataformaTipo de servicio
Schannel.dll5.2.3790.2971254,46410-Jul-200703:15x64No aplicable
Wschannel.dll5.2.3790.2971144,89610-Jul-200703:15x86WOW
Windows Server 2003, versiones basadas en x64 con SP2
Nombre del archivoVersión del archivoTamaño de archivoFechaHoraPlataformaTipo de servicio
Schannel.dll5.2.3790.2971254,46410-Jul-200703:15x64No aplicable
Wschannel.dll5.2.3790.2971144,89610-Jul-200703:15x86WOW
Windows Server 2003, versiones basadas en Itanium con SP1
Nombre del archivoVersión del archivoTamaño de archivoFechaHoraPlataformaTipo de servicio
Schannel.dll5.2.3790.2971466,43210-Jul-200703:16IA-64No aplicable
Wschannel.dll5.2.3790.2971144,89610-Jul-200703:16x86WOW
Windows Server 2003, versiones basadas en Itanium con Service Pack 2
Nombre del archivoVersión del archivoTamaño de archivoFechaHoraPlataformaTipo de servicio
Schannel.dll5.2.3790.4115466,43210-Jul-200703:24IA-64No aplicable
Wschannel.dll5.2.3790.4115147.45610-Jul-200703:24x86WOW

Solución alternativa


Para evitar este problema, utilice uno de los métodos siguientes, según corresponda a su situación.

Método 1: Quitar algunos certificados raíz de confianza

Si algunos de los certificados raíz de confianza no se utilizan en su entorno, quitarlos desde el servidor Web o desde el servidor IAS. Para ello, siga estos pasos:
  1. Haga clic en Inicio, haga clic en Ejecutar, escriba mmc y, a continuación, haga clic en Aceptar.
  2. En el menú archivo , haga clic en Agregar o quitar complemento y, a continuación, haga clic en Agregar.
  3. En el cuadro de diálogo Agregar un complemento independiente , haga clic en certificadosy, a continuación, haga clic en Agregar.
  4. Haga clic en cuenta de equipo, haga clic en siguientey, a continuación, haga clic en Finalizar.
  5. Haga clic en Cerrary, a continuación, haga clic en Aceptar.
  6. En la Raíz de la consola en el complemento Microsoft Management Console (MMC), expanda certificados (equipo Local), expanda Entidades emisoras raíz de confianzay, a continuación, haga clic en certificados.
  7. Quitar certificados raíz de confianza que no tienes que tener. Para ello, haga clic en un certificado, haga clic en Eliminary, a continuación, haga clic en para confirmar la eliminación del certificado.
Nota: Hay algunos certificados raíz que son requeridos por Windows. Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:

293781 los certificados de raíz de confianza requeridos por Windows Server 2003, Windows XP y Windows 2000

Método 2: Configurar la directiva de grupo para omitir la lista de entidades emisoras de certificados de confianza en el equipo local

Si el servidor IAS o el servidor Web es un miembro de un dominio, puede crear una directiva para que el servidor omitir el la lista de entidades emisoras de certificados de confianza en el equipo local. Cuando se aplica esta directiva, clientes y servidores afectados sólo confían en los certificados que se encuentran en el almacén de entidades de certificación raíz de empresa. Por lo tanto, no es necesario modificar los equipos individuales.

Nota: Este método sólo funciona si todos los equipos cliente están en el mismo dominio del servicio de directorio de Active Directory o el bosque de Active Directory. Directiva de grupo no se aplica a equipos que no están en el mismo bosque de Active Directory.


Para crear esta directiva, siga estos pasos.

Paso 1: Crear un objeto de directiva de grupo

  1. Iniciar sesión en un controlador de dominio y, a continuación, inicie la herramienta Active Directory Users and Computers. Para ello, haga clic en Inicio, haga clic en Ejecutar, escriba dsa.mscy, a continuación, haga clic en Aceptar.
  2. Haga clic en el contenedor en el que desea configurar el objeto de directiva de grupo y, a continuación, haga clic en Propiedades. Por ejemplo, haga clic en el contenedor de dominio o haga clic derecho en un contenedor de unidad organizativa.
  3. Haga clic en la ficha Directiva de grupo y, a continuación, haga clic en nuevo.
  4. Escriba un nombre descriptivo para la directiva y, a continuación, presione ENTRAR.
  5. Haga clic en Editar para iniciar el Editor de objetos de directiva de grupo.
  6. Expanda Configuración del equipo, expanda Configuración de Windows, expanda Configuración de seguridady, a continuación, haga clic en Directivas de claves públicas.
  7. Haga clic en Entidades emisoras raíz de confianzay, a continuación, haga clic en Propiedades.
  8. Haga clic en Entidades emisoras de certificados de raíz de empresay, a continuación, haga clic en Aceptar.
  9. Salir del Editor de objetos de directiva de grupo.
  10. Haga clic en Aceptar para cerrar el cuadro de diálogo Propiedades de nombreobjeto .

Paso 2: Agregar certificados raíz al almacén de certificados "Trusted Root Certification Authorities"

  1. Exportar todos los certificados raíz necesaria desde el almacén del equipo local del servidor. Esto incluye los certificados raíz de entidades de certificación interna (CA) y los certificados raíz de entidades emisoras de certificados públicos que requiere la organización.
  2. Iniciar sesión en un controlador de dominio y, a continuación, inicie la herramienta Active Directory Users and Computers.
  3. (Ratón) en el contenedor que contiene el objeto de directiva de grupo que creó en el "paso 1: crear un objeto" sección y, a continuación, haga clic en Propiedades.
  4. Haga clic en la ficha Directiva de grupo , haga clic en el objeto de directiva de grupo y, a continuación, haga clic en Editar.
  5. Expanda Configuración del equipo, expanda Configuración de Windows, expanda Configuración de seguridady, a continuación, haga clic en Directivas de claves públicas.
  6. Haga Trusted Root Certification Authorities'y, a continuación, haga clic en Importar.
  7. Siga los pasos del Asistente para importación de certificados para importar el certificado raíz o los certificados que exportó en el paso 2a.
  8. Salir del Editor de objetos de directiva de grupo.
  9. Haga clic en Aceptar para cerrar el cuadro de diálogo Propiedades de nombreobjeto .
Nota: Hay algunos certificados raíz que son requeridos por Windows. Debe agregar estos certificados a la directiva que ha creado. Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:

293781 los certificados de raíz de confianza requeridos por Windows Server 2003, Windows XP y Windows 2000

Método 3: Configurar Schannel para no enviar la lista de entidades emisoras de certificados raíz de confianza durante el proceso de negociación TLS/SSL

Advertencia: pueden producirse problemas graves si modifica incorrectamente el registro mediante el Editor del registro o mediante cualquier otro método. Estos problemas pueden requerir que reinstale el sistema operativo. Microsoft no puede garantizar que estos problemas puedan resolverse. Modifique el registro bajo su propio riesgo.

En el servidor que ejecuta IIS o en el servidor IAS en el que experimenta este problema, establezca la entrada de registro siguiente en false:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL

Nombre de valor: SendTrustedIssuerList
Tipo de valor: REG_DWORD
Datos del valor: 0 (falso)
De forma predeterminada, esta entrada no aparece en el registro. De forma predeterminada, este valor es 1 (True). Esta entrada del Registro controla el indicador que controla si el servidor envía una lista de entidades emisoras de certificados de confianza para el cliente. Cuando esta entrada del registro se establece en False, el servidor envía al cliente una lista de entidades emisoras de certificados de confianza. Este comportamiento puede afectar a cómo el cliente responde a una solicitud de un certificado. Por ejemplo, si Internet Explorer recibe una solicitud de autenticación de cliente, Internet Explorer muestra sólo los certificados de cliente que aparecen en la cadena de una de las entidades emisoras que se encuentran en la lista desde el servidor. Sin embargo, si el servidor no envía una lista de entidades emisoras de certificados de confianza, Internet Explorer muestra todos los certificados de cliente instalados en el equipo cliente.

Para establecer esta entrada del registro, siga estos pasos:
  1. Haga clic en Inicio, haga clic en Ejecutar, escriba regedit y, a continuación, haga clic en Aceptar.
  2. Busque y, a continuación, haga clic en la subclave del registro siguiente:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL
  3. En el menú Edición , seleccione Nuevo y, a continuación, haga clic en Valor DWORD.
  4. Escriba SendTrustedIssuerListy, a continuación, presione ENTRAR para nombrar la entrada del registro.
  5. Haga clic en SendTrustedIssuerListy, a continuación, haga clic en Modificar.
  6. En el cuadro información del valor , escriba 0 si no se muestra ese valor y, a continuación, haga clic en Aceptar.
  7. Salga del Editor del Registro.
Para obtener más información acerca de la entrada del registro SCHANNEL, visite el siguiente sitio Web de Microsoft:

Estado


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

Más información


Windows Server 2003 está diseñado para examinar automáticamente la lista de entidades emisoras de certificados de confianza en el sitio Web Microsoft Windows Update al actualizar certificados raíz. A continuación, Windows instala el certificado raíz correspondiente después de que el certificado se valida por el programa de un usuario.

Nota: En Windows Server 2003, la lista de entidades emisoras de certificados no puede superar los 12,228 (0 x 3000) bytes. Cuando la actualización de certificados raíz, puede aumentar considerablemente la lista de entidades emisoras de certificados de confianza. Por lo tanto, la lista puede resultar demasiado larga. En este caso, Windows trunca la lista. Este comportamiento podría causar problemas con la autorización. En este escenario, puede experimentar el problema que se describe en la sección "Síntomas".

Cómo configurar el registro de sucesos Schannel

Advertencia: pueden producirse problemas graves si modifica incorrectamente el registro mediante el Editor del registro o mediante cualquier otro método. Estos problemas pueden requerir que reinstale el sistema operativo. Microsoft no puede garantizar que estos problemas puedan resolverse. Modifique el registro bajo su propio riesgo.

Para configurar Schannel para registrar sucesos de advertencia en el registro del sistema, establezca la entrada de registro siguiente:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SecurityProviders\Schannel

Nombre de valor: EventLogging
Tipo de valor: REG_DWORD
Datos del valor: 0 x 3
Nota: Un valor de 0 x 3 configura Schannel para registrar sucesos de advertencia y Error.

Para obtener más información acerca de cómo configurar el registro de eventos de Schannel, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:

260729 cómo habilitar el registro en IIS de sucesos Schannel

Referencias


Para obtener más información, haga clic en el siguiente número de artículo para verlo en Microsoft Knowledge Base:

Miembros de programa de 931125 Microsoft root certificate (enero de 2007)

Para obtener más información, haga clic en el siguiente número de artículo para verlo en Microsoft Knowledge Base:

814394 requisitos de certificados cuando se utiliza EAP-TLS o PEAP con EAP-TLS