Advertencias sobre un certificado que no es de confianza después de instalar Visual Studio 2015 Update 3

Este artículo le ayuda a resolver las advertencias que se producen para un certificado que no es de confianza después de instalar Microsoft Visual Studio 2015 Update 3.

Versión del producto original:   Visual Studio 2015
Número de KB original:   3180222

Síntomas

Ha desarrollado aplicaciones web a través de Hypertext Transfer Protocol Secure (HTTPS) mediante la versión de lanzamiento de Visual Studio 2015, Update 1 o Update 2. Sin embargo, después de instalar Visual Studio 2015 Update 3, comienza a recibir advertencias sobre un certificado que no es de confianza.

Causa

Durante la instalación inicial de Visual Studio, Internet Information Services (IIS) Express instala un certificado autofirmado en la Certificates (Local Computer)\Personal\Certificates carpeta si aún no existe un certificado. La primera vez que se depura una aplicación web que usa Capa de sockets seguros (SSL), se le pedirá que instale este certificado en la Certificates - Current User\Trusted Root Certification Authorities\Certificates carpeta .

Durante la actualización a Visual Studio 2015 Update 3, IIS Express instala un nuevo certificado autofirmado SHA256 en la Certificates (Local Computer)\Personal\Certificates carpeta. Sin embargo, dado que ya hay un certificado instalado en la Certificates - Current User\Trusted Root Certification Authorities\Certificates carpeta, Visual Studio no puede solicitarle que instale el nuevo certificado SHA256 en la Certificates - Current User\Trusted Root Certification Authorities\Certificates carpeta.

Método 1: Uso de un script de PowerShell

Nota

Éste es el método preferido.

  1. Ejecute el siguiente script en el entorno de scripting integrado (ISE) de Windows PowerShell:

    ipmo PKI
    $name = [GUID]::NewGuid()
    $cerFile = "$env:TEMP\$name.cer"
    $certs = Get-ChildItem Cert:\LocalMachine\My -DnsName localhost -SSLServerAuthentication |
    ? {($_.FriendlyName -eq 'IIS Express Development Certificate') -and
    ($_.SignatureAlgorithm.FriendlyName -ieq 'sha256RSA') -and
    ($_.EnhancedKeyUsageList.Count -eq 1)}
    if ($certs.Count -eq 0)
    {
        Write-Error 'Cannot find any SHA256 certificate generated by IIS Express.
        Please make sure that the latest version of IIS Express is installed.'
    }
    else
    {
        foreach ($cert in $certs)
        {
            Export-Certificate -Cert $cert.PSPath -FilePath $cerFile -Type CERT | Out-Null
            Import-Certificate -FilePath $cerFile -CertStoreLocation Cert:\CurrentUser\Root | Out-Null
            Remove-Item $cerFile -Force
        }
        Write-Host 'Successfully installed the certificate to
        Trusted Root Certification Authorities of the current user.'
    }
    
  2. Haga clic en cuando reciba la siguiente advertencia:

    Captura de pantalla de la ventana Advertencia de seguridad, que indica que está a punto de instalar una entidad de certificación que dice representar.

  3. Una vez que el script termine de ejecutarse, debería ver el siguiente mensaje en la ventana de comandos de PowerShell ISE:

    Instaló correctamente el certificado en entidades de certificación raíz de confianza del usuario actual.

Método 2: Configurar equipos para que confíen en el certificado de IIS Express

  1. Para abrir microsoft Management Console, haga clic en Inicio, escriba Ejecutar y, a continuación, presione Entrar. En el cuadro de diálogo Ejecutar , escriba mmc y, a continuación, haga clic en Aceptar.

    Captura de pantalla de la ventana Ejecutar en la que se escribe mmc.

  2. Agregue un complemento para administrar certificados para el equipo local. Para ello, siga estos pasos:

    1. En el menú Archivo , haga clic en Agregar o quitar complemento.

      Captura de pantalla del menú Archivo. La entrada de menú denominada Agregar o Quitar complemento y su método abreviado de teclado Ctrl+M están resaltados.

    2. En el cuadro de diálogo Agregar o quitar complementos , seleccione Certificadosy, a continuación, haga clic en Agregar.

      Captura de pantalla del cuadro de diálogo Agregar o quitar complementos con el elemento Certificados seleccionado.

    3. En el cuadro de diálogo Complemento Certificados , seleccione Cuenta de equipo y, a continuación, haga clic en Siguiente.

      Captura de pantalla del cuadro de diálogo del complemento Certificados con la opción Cuenta de equipo activada.

    4. En el cuadro de diálogo Seleccionar equipo , seleccione Equipo local y, a continuación, haga clic en Finalizar.

      Captura de pantalla de la opción Seleccionar equipo con equipo local activada.

    5. En el cuadro de diálogo Agregar o quitar complementos , seleccione Certificados de nuevo y, esta vez, seleccione Mi cuenta de usuario en el cuadro de diálogo Complemento Certificados .

      Captura de pantalla del cuadro de diálogo del complemento Certificados con mi cuenta de usuario activada.

  3. Exporte el certificado SHA256 IIS Express de , como Certificates (Local Computer)\Personal\Certificatesse indica a continuación:

    1. Abra el certificado de desarrollo IIS Express y compruebe que ha seleccionado el certificado SHA256. y, a continuación, haga clic en Copiar en archivo.

      Captura de pantalla de la selección del certificado SHA256 y el botón Copiar en archivo.

    2. En el Asistente para exportación de certificados, seleccione No, no exporte la clave privada y, a continuación, haga clic en Siguiente.

      Captura de pantalla del cuadro de diálogo Asistente para exportación de certificados para seleccionar la opción No, no exporte la clave privada.

    3. En la página siguiente del asistente, seleccione DER encoded binary X.509 (. CER) y, a continuación, haga clic en Siguiente.

      Captura de pantalla de la página para comprobar el binario codificado de DER X.509 (. CER) opción.

    4. En la página siguiente del asistente, seleccione una ubicación en el disco y siga los pasos restantes hasta que haya exportado correctamente el certificado.

  4. Importe el certificado exportado a la siguiente ubicación:
    Certificates - Current User\Trusted Root Certification Authorities\Certificates

    Para ello, siga estos pasos:

    1. Vaya a la Certificates - Current User\Trusted Root Certification Authorities\Certificates carpeta y, a continuación, haga clic en Acción, seleccione Todas las tareasy, a continuación, haga clic en Importar.

    2. En el Asistente para importación de certificados, vaya al certificado que exportó (Entidades de certificación raíz de confianza) y, a continuación, seleccione Colocar todos los certificados en el siguiente almacén.

      Captura de pantalla de la página para comprobar Colocar todos los certificados en el siguiente almacén. El almacén es Entidades de certificación raíz de confianza.

    3. Haga clic en Siguiente, compruebe que seleccionó el certificado correcto y, a continuación, haga clic en Finalizar.

Después de importar correctamente el certificado IIS autofirmado, ya no recibirá advertencias sobre un certificado que no es de confianza durante el desarrollo.