Visual Studio 2015에서 게시-신뢰할 수없는 인증서 허용
Visual Studio 2015에서 ASP.NET 5 MVC6 프로젝트를 게시하고 있습니다. 서버에서 게시 프로필을 가져 왔습니다. 연결이 성공적으로 확인되지만 프로젝트를 게시 할 때 다음 오류가 발생합니다.
ERROR_CERTIFICATE_VALIDATION_FAILED
지정된 프로세스 ( "웹 관리 서비스")를 사용하여 원격 컴퓨터 ( "XXXXXXXXX")에 연결되었지만 서버의 인증서를 확인할 수 없습니다. 서버를 신뢰하는 경우 다시 연결하고 신뢰할 수없는 인증서를 허용하십시오.
게시 설정에는 신뢰할 수없는 인증서를 허용하는 옵션이 없습니다.
신뢰할 수없는 인증서를 허용하는 옵션은 현재 도구에서 아직 지원되지 않습니다. 곧 업데이트되기를 바랍니다. 그러나 수동으로 설정할 수 있습니다.
.pubxml
텍스트 편집기의 / Properties / PublishProfiles 내 에서 게시 프로필 파일 ( )을 엽니 다.<PropertyGroup>
요소 내에서 AllowUntrustedCertificate를 True (<AllowUntrustedCertificate>True</AllowUntrustedCertificate>
)로 설정하거나 존재하지 않는 경우 추가합니다.- UsePowerShell을 False (
<UsePowerShell>False</UsePowerShell>
)로 설정합니다.
작성 시점에서 생성 된 powershell 스크립트 AllowUntrustedCertificate
는 버그 일 가능성이있는 속성을 무시 하므로 False
.
파일 에서 모듈 버전 을 업데이트 하면 powershell이 작동하도록 할 수 있습니다 .ps1
.
참고로 서버의 인증서를 로컬로 "신뢰"하여이 문제를 해결할 수도 있습니다.
dot net core 1.0의 경우 태그를 추가해야합니다.
<AllowUntrustedCertificate>True</AllowUntrustedCertificate>
.pubxml 파일에 프로필을 게시하려면
나는 가지고 <UsePowerShell>True</UsePowerShell>
있었지만 여전히 인증서 오류로 실패했습니다.
- 설정 대화 상자에 비밀번호를 다시 입력했지만 여전히 실패했습니다.
- 연결 확인을 클릭하면 작동하기 시작했습니다.
노트
- VS 2017 (15.2)
- 내 비밀번호가 최근 변경되었습니다.
- 테스트로 잘못된 암호를 입력하고 인증서 오류가 발생하여 인증서 오류가 신뢰할 수없는 인증서에 대한 것이 아닙니다.
저에게 솔루션은 게시 프로필 xml에서 4 줄을 사용했습니다.
<AllowUntrustedCertificate>True</AllowUntrustedCertificate>
<UseMsDeployExe>true</UseMsDeployExe>
<UserName>myuser</UserName>
<Password>mypass</Password>
는 UseMsDeployExe
인증서를 무시하지만, 사용자가 아닌 사용자에 따라서 필요성을 인증하고 (기계의 당신이 배포하는) 전달하는 오류를 변경
powershell 스크립트에서 변경이 필요하지 않았습니다.
최신 정보
VS2015 또는 VS2017 커뮤니티에 .net 코어 앱을 배포 할 때 원격 IIS 서버에 약간의 관찰 만하면됩니다.
<UsePowerShell>True</UsePowerShell>
아니
<UsePowerShell>False</UsePowerShell>
배포가 성공적으로 완료되었지만 태그를 true로 변경할 때까지 파일이 서버에 복사되지 않았 음을 발견했습니다 .
누군가에게 도움이되기를 바랍니다.
프로필을 가져 오거나 만든 후 구성을 클릭 한 다음 연결을 확인합니다. 비밀번호를 입력하고 설정을 마칩니다. 이제 배포하십시오.
또 다른 해결책
원격 IIS에서 게시 설정을 만들고 Visual Studio 2017 (15.2)에서 가져 왔습니다. 그 후 IIS 사용자가 특정 사이트에만 액세스 할 수 있으므로 사이트 이름을 지정하기 위해 URL을 변경했습니다 ( SO에 대한 이 답변 덕분에 ). UI를 통해 자격 증명을 입력했으며 프로필에 암호를 저장할 필요가 없습니다.
내 프로필은 다음과 같습니다.
<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>
<AllowUntrustedCertificate>
자체 서명 된 인증서가 내 컴퓨터에서 신뢰되지 않기 때문에 필요했습니다.
이 프로필을 사용하면 IIS의 설정에 따라 백업이 이루어지며 프로세스가 완료되면 사이트가 업데이트되고 내 브라우저에서 열립니다. :-)
여기에있는 다른 모든 답변도 작동했지만 몇 가지 변경 사항 (AllowUntrustedCertificate) 만 포함하고 일반 암호를 저장하지 않기 때문에 이러한 방식으로 공유하는 것이 좋을 것이라고 생각했습니다.
'Programing' 카테고리의 다른 글
iOS AutoLayout 여러 줄 UILabel (0) | 2020.12.07 |
---|---|
높이가 고정 된 부트 스트랩 패널 본체를 만드는 방법 (0) | 2020.12.07 |
Windows 배치 스크립트에서 파일 크기를 어떻게 확인할 수 있습니까? (0) | 2020.12.07 |
자바 스크립트 함수를 선언 한 후 변경할 수 있습니까? (0) | 2020.12.07 |
오류 :“입력이 올바른 UTF-8이 아닙니다. 인코딩을 나타냅니다!” (0) | 2020.12.07 |