Introducción de AD CS certificado transparencia

Se aplica: Windows Server 2016

Información general


Certificado de transparencia (CT) es un nuevo estándar de Internet que aborda la preocupación acerca de los certificados emitidos erróneamente y rechazo de certificado realizando auditables públicamente el ecosistema de Transport Layer Security (TLS). Sin CT, no existe forma como propietario de un dominio ser consciente de los certificados que se emiten a su dominio, a menos que usted lo ha solicitado. Mediante el uso de CTs, es fácil auditar la calidad de los certificados que la entidad emisora de certificados (CA) emite y determinar si se ajustan a las normas que se aplican por la entidad emisora de certificados y explorador Forum (foro de CAB).

CT requiere que todos los certificados TLS emitidos por una CA pública se registran en un servidor de registro accesible públicamente. Para asegurarse de que se registran todos los certificados, los exploradores web que admiten CT * comprobará que cada certificado tiene un correspondiente firmado certificado Timestamp (SCT) que está asociado a ella. Estos SCTs se utilizan como prueba de que un certificado está dentro de un registro. No presentar el SCT durante el protocolo de enlace TLS devuelve una advertencia al usuario.

* Google anunció el 6 de febrero de 2018, que certificado transparencia forzará su principio del explorador de Chrome en 30 de abril de 2018.

Flujo de llamadas para validar el certificado de transparencia


El proceso de creación y validación de certificados se actualiza como sigue.

  1. El operador del servidor adquiere un certificado de la CA.
  2. La entidad emisora de certificados valida el operador del servidor mediante la validación del dominio (DV), validación organizativa (OV) o validación extendida (EV, Extended Validation).
  3. La entidad emisora de certificados crea un precertificate. [Nuevo]
  4. La entidad emisora de certificados (o cliente) inicia la precertificate en un servidor de registro CT. Registro del servidor devuelve un certificado firmado de marca de hora (SCT). [Nuevo]
  5. La CA emite un certificado de Secure Sockets Layer (SSL).

An SSL certificate normalmente incluye SCT. Sin embargo, no es necesario incluir SCT el certificado.  Cuando se utiliza un explorador para visitar un servidor a través de una conexión TLS, sucede lo siguiente:

  1. El explorador valida el certificado SSL durante el protocolo de enlace TLS.
  2. El explorador valida la SCT que se proporciona durante el protocolo de enlace TLS, ya sea a través de grapado de OCSP (actualmente sólo admite IIS), a través de una extensión TLS, o (más probablemente) de información que se incrusta en el certificado.
  3. El explorador valida la SCT emitido por un servidor de registro que aparece en su lista de registro de servidor de confianza en la memoria. [Nuevo]
  4. El explorador realiza una conexión al servidor.
  5. El certificado SSL cifra todos los datos entre el navegador y el servidor.

    diagrama de flujo del proceso

Habilitar transparencia certificado en AD CS


Para habilitar la transparencia del certificado en una entidad emisora de certificados en los servicios de certificados de Active Directory (AD CS), activarlo utilizando las siguientes claves del registro:

  1. Cree un valor de registro denominado CertificateTransparencyFlagsy escriba REG_DWORD bajoHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\CertSvc\Configuration\<CA Name>.
  2. Habilitar el bit en CertificateTransparencyFlags (valor 0 x 1) de 0 x 1. De forma predeterminada, esta característica está deshabilitada.

Borrar el bit en CertificateTransparencyFlags (valor 0 x 0) de 0 x 1 deshabilita la característica. Se rechazarán las nuevas solicitudes de CT y no se emitirán las solicitudes de saltos intermedio.

Cambios agregados al AD CS para admitir la transparencia del certificado


Aplicaciones que llamen a AD CS para crear certificados deben modificarse para admitir las siguientes actualizaciones de llamada "Precertificate":

  1. Para participar de transparencia de certificado por cada solicitud, llame a ICertRequest:: Submit y establecer el indicador CR_IN_CERTIFICATETRANSPARENCY .
  2. Una vez recibido el precertificate , el servicio de llamadas debe agregar la precertificate devuelta a un Repositorio público de registro CT.
  3. Cuando se agrega un precertificate a un registro CT, se devuelve un SCTList.
  4. Para completar la solicitud y emitir el certificado, llame a ICertRequest:: Submit y establecer el indicador CR_IN_SIGNEDCERTIFICATETIMESTAMPLIST .

    Siga estas instrucciones:
     
    • SCTs de llamadas anteriores deben combinarse en una lista agregada (según el documento RFC).
    • De forma predeterminada, una CA impone un tamaño máximo de SCTList de 1 k Una SCTList estándar debe ser aproximadamente 100 bytes. Establecer el registro REG_DWORD de MaxSCTListSize personalizar.
    • SCTList se validarán para la sintaxis y la semántica básica (se establecen valores esperados).
    • Antes de emitirse, el certificado X.509 nuevo se comparará con el precertificate original (en la columna RawPrecertificate ) para evitar que se invalidan cada vez. Para obtener más información, consulte RFC 6962 sección 3.2.
    gráfico de 4093260_client-CA

Las siguientes personalizaciones son compatibles con la implementación de AD CS de transparencia del certificado bajoHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\CertSvc\Configuration\<CA Name>.

  1. Establecer el MaxSCTListSize (REG_DWORD) para personalizar el máximo aceptado SCTList, en bytes. El valor predeterminado es 1024 bytes.
  2. Establecer el CTInformationExtensionOid (REG_SZ) para personalizar el OID en el certificado emitido que contiene los datos binarios que se devuelven a la entidad emisora en el segundo salto. (Podría tratarse de la SCTList si CT v1 o la TransItemList si CT v2, o cualquier otra cosa.)
  3. Establecer el bit de CertificateTransparencyFlags REG_DWORD para deshabilitar la validación de los datos binarios que ha devuelto a la entidad emisora en el segundo salto de 0 x 2. (Utilice esto si desea utilizar un TransItemList u otros datos binarios personalizados.) De lo contrario, la entidad emisora realiza validación de sintaxis SCTList básica CT v1.