IIS puede rechazar solicitudes de certificado de cliente con errores HTTP 403.7 o 403.16
Este artículo le ayuda a resolver el problema en el que Internet Information Services (IIS) 8 puede rechazar solicitudes de certificado de cliente con errores HTTP 403.7 o 403.16.
Versión del producto original: Internet Information Services
Número KB original: 2802568
Síntomas
Imagina la siguiente situación: Tiene una aplicación web de IIS 8 que está configurada para usar ssl y autenticación de certificado de cliente. Se instala un certificado que no está autofirmado, como un certificado de entidad de certificación intermedia, en el almacén de certificados De entidades de certificación raíz de confianza del equipo local --> en el servidor IIS. Cuando un usuario envía una solicitud HTTP a la aplicación web e intenta autenticarse con un certificado de cliente, el servidor IIS puede enviar uno de los siguientes mensajes de error como respuesta:
HTTP 403.16: el certificado de cliente no es de confianza o no es válido.
OR
HTTP 403.7: certificado de cliente obligatorio.
Causa
Los síntomas del problema pueden variar según la configuración y el uso de una lista de confianza de certificados (CTL) en el servidor IIS:
ESCENARIO 1: error HTTP 403.16
Si IIS no está configurado para usar una CTL, la autenticación de certificados de cliente SSL producirá un error con la condición de error 403.16. Este error se produce porque SChannel.dll considera erróneamente que el certificado de cliente no es de confianza.
Nota
No tener CTL en uso es la configuración predeterminada de IIS 8.0. Esto se configura sin tener presente
SendTrustedIssuerListo porsetting SendTrustedIssuerList=0.En este escenario, el registro de IIS normalmente muestra un valor de 2148204809 en el
sc-win32-statuscampo. Esto se traduce en código de error 0x800b0109, que se define comoCERT_E_UNTRUSTEDROOT.ESCENARIO 2: error HTTP 403.7
Si configura IIS para que use una CTL ( ), la autenticación de certificados de cliente falla con la condición de
SendTrustedIssuerList=1error 403.7. Este error se produce porque la CTL enviada por IIS no contiene el certificado raíz de confianza para el certificado de cliente del usuario, por lo que Internet Explorer no puede presentar al usuario ningún certificado de cliente válido para elegir.
Solución alternativa
Para evitar estos problemas, desinstale el certificado no autofirmado del almacén de certificados de entidades de certificación raíz de confianza del equipo local --> del servidor IIS.
Más información
Este problema tiene la misma causa raíz que el problema descrito en Lync Server: Lync Server 2013Front-End servicio no se puede iniciar en Windows Server 2012 .
Puede considerar el uso del script de PowerShell proporcionado en el artículo anterior para detectar los certificados no autofirmados instalados en el almacén de certificados de entidades de certificación raíz de confianza.