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.
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.' }Haga clic en Sí cuando reciba la siguiente advertencia:
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
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.
Agregue un complemento para administrar certificados para el equipo local. Para ello, siga estos pasos:
En el menú Archivo , haga clic en Agregar o quitar complemento.
En el cuadro de diálogo Agregar o quitar complementos , seleccione Certificadosy, a continuación, haga clic en Agregar.
En el cuadro de diálogo Complemento Certificados , seleccione Cuenta de equipo y, a continuación, haga clic en Siguiente.
En el cuadro de diálogo Seleccionar equipo , seleccione Equipo local y, a continuación, haga clic en Finalizar.
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 .
Exporte el certificado SHA256 IIS Express de , como
Certificates (Local Computer)\Personal\Certificatesse indica a continuación: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.
En el Asistente para exportación de certificados, seleccione No, no exporte la clave privada y, a continuación, haga clic en Siguiente.
En la página siguiente del asistente, seleccione DER encoded binary X.509 (. CER) y, a continuación, haga clic en Siguiente.
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.
Importe el certificado exportado a la siguiente ubicación:
Certificates - Current User\Trusted Root Certification Authorities\CertificatesPara ello, siga estos pasos:
Vaya a la
Certificates - Current User\Trusted Root Certification Authorities\Certificatescarpeta y, a continuación, haga clic en Acción, seleccione Todas las tareasy, a continuación, haga clic en Importar.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.
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.