visual studio microsoft descargar community .net ssl visual-studio-2015 publish asp.net-core

.net - microsoft - visual studio installer



PublicaciĆ³n de Visual Studio 2015: permitir certificados no confiables (7)

Después de importar o crear el perfil, haga clic en configurar y luego valide la conexión. Ingrese la contraseña y finalice la configuración. Ahora despliegue.

Estoy publicando mi proyecto ASP.NET 5 MVC6 de Visual Studio 2015. Importé el perfil de publicación desde mi servidor. La conexión se valida con éxito, sin embargo, cuando publico mi proyecto, aparece el siguiente error:

ERROR_CERTIFICATE_VALIDATION_FAILED

Conectado a la computadora remota ("XXXXXXXXX") utilizando el proceso especificado ("Servicio de administración web"), pero no pudo verificar el certificado del servidor. Si confía en el servidor, conéctese nuevamente y permita certificados no confiables.

No hay ninguna opción para permitir certificados no confiables en la configuración de publicación.


La opción para permitir certificados no confiables aún no se admite en las herramientas actuales. Con suerte, esto se actualiza muy pronto. Sin embargo, puede configurarlo manualmente.

  1. Abra el archivo de publicación de perfil ( .pubxml ) dentro de / Propiedades / PublishProfiles en un editor de texto
  2. Dentro del elemento <PropertyGroup> , establezca AllowUntrustedCertificate en True ( <AllowUntrustedCertificate>True</AllowUntrustedCertificate> ) o agréguelo si no existe
  3. Establezca UsePowerShell en False ( <UsePowerShell>False</UsePowerShell> ).

En este momento de la escritura, el script de AllowUntrustedCertificate generado no tiene en cuenta la propiedad AllowUntrustedCertificate , que probablemente sea un error, por lo tanto, la necesidad de establecerlo en False .

Puede hacer que PowerShell funcione si actualiza la versión del módulo en el archivo .ps1 .

Como nota al margen, también puede solucionar este problema "confiando" localmente en el certificado del servidor.


Para dot net core 1.0 debe agregar la etiqueta

<AllowUntrustedCertificate>True</AllowUntrustedCertificate>

para publicar perfiles en su archivo .pubxml


Para mí, la solución tomó 4 líneas en el perfil de publicación xml.

<AllowUntrustedCertificate>True</AllowUntrustedCertificate> <UseMsDeployExe>true</UseMsDeployExe> <UserName>myuser</UserName> <Password>mypass</Password>

UseMsDeployExe cambia el error para ignorar el certificado, pero no autenticar al usuario, de ahí la necesidad del usuario y el pase (de la máquina en la que está desplegando)

No se necesitaron cambios en el script de powershell.


Tenía <UsePowerShell>True</UsePowerShell> pero seguía fallando con el error de cert.

  • Volví a ingresar mi contraseña en el cuadro de diálogo de configuración y todavía falló
  • Una vez que hice clic en Validar conexión , comenzó a funcionar.

Nota

  • VS 2017 (15.2)
  • Mi contraseña ha cambiado recientemente
  • Como prueba, ingresé la contraseña incorrecta y obtuve el error de cert, por lo que el error de cert no se trata solo de un cert no confiable aparentemente

Actualizar

Solo una pequeña observación, cuando implemente una aplicación .net core en la comunidad VS2015 o VS2017, en un servidor IIS remoto, use esto

<UsePowerShell>True</UsePowerShell>

no

<UsePowerShell>False</UsePowerShell>

Descubrí que la implementación se completaba con éxito, pero no se copiaron archivos al servidor hasta que cambié la etiqueta a verdadero .

Espero que esto ayude a alguien.


Otra solución

Creé configuraciones de publicación en el IIS remoto y las importé en Visual Studio 2017 (15.2). Después de eso, cambié la URL para especificar el nombre del sitio ya que el usuario de IIS solo tiene acceso al sitio específico (gracias a this respuesta en SO). Ingresé las credenciales a través de la interfaz de usuario y no es necesario almacenar la contraseña en el perfil.

Mi perfil se ve así:

<WebPublishMethod>MSDeploy</WebPublishMethod> <LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration> <LastUsedPlatform>Any CPU</LastUsedPlatform> <SiteUrlToLaunchAfterPublish>https://some.site.com:443/</SiteUrlToLaunchAfterPublish> <LaunchSiteAfterPublish>True</LaunchSiteAfterPublish> <ExcludeApp_Data>False</ExcludeApp_Data> <PublishFramework>netcoreapp1.1</PublishFramework> <ProjectGuid>eecf975e-f2e6-440f-bfd6-a0a63c25e3c3</ProjectGuid> <MSDeployServiceURL>https://url.toourserver.com:8172/msdeploy.axd?site=some.site.com</MSDeployServiceURL> <DeployIisAppPath>some.site.com</DeployIisAppPath> <RemoteSitePhysicalPath /> <SkipExtraFilesOnServer>True</SkipExtraFilesOnServer> <MSDeployPublishMethod>WMSVC</MSDeployPublishMethod> <EnableMSDeployBackup>True</EnableMSDeployBackup> <UserName>IISUserName</UserName> <AllowUntrustedCertificate>True</AllowUntrustedCertificate> <_SavePWD>True</_SavePWD>

Se necesitaba <AllowUntrustedCertificate> ya que el certificado autofirmado no es confiable en mi máquina.

Con este perfil, se realiza una copia de seguridad de acuerdo con la configuración de IIS, el sitio se actualiza y se abre en mi navegador cuando finaliza el proceso :-)

Aunque todas las otras respuestas aquí también lo hicieron funcionar, pensé que sería bueno compartirlo de esta manera, ya que involucra solo unos pocos cambios (AllowUntrustedCertificate) y ningún almacenamiento de contraseñas simples.