2012-10-21 3 views
3

내가 원격 MSDeploy은 C#을 통해 MSDeploy API를 사용하여 명령을 실행하려고 허용.MSDeploy의 API - 신뢰할 수없는 인증서

나는 다음과 같은 실행하고 : 나는 신뢰할 수없는 certicate를 실행 해요로

//test connection by pulling down file list 
var sourceBaseOptions = new DeploymentBaseOptions(); 
var destBaseOptions = new DeploymentBaseOptions 
          { 
           ComputerName = "https://mysite.com/msdeploy.axd?sitename=siteName", 
           UserName = "username", 
           Password = "password", 
           AuthenticationType = "Basic" 
          }; 
var syncOptions = new DeploymentSyncOptions();  

var deployment = DeploymentManager.AvailableProviderFactories; 
DeploymentObject deploymentObject = DeploymentManager.CreateObject("dirPath", Settings.TemporaryStoragePath, sourceBaseOptions); 
// collect and report all the changes that would happen 
var changes = deploymentObject.SyncTo(destBaseOptions, syncOptions); 

그것은 예외를 던지고있다. MSDeploy에게 인증서에 대해 걱정하지 말라고 어떻게 말합니까? (즉, "AllowUntrustedCertificate = true"를 기반으로 코드)

답변

5

내가 다시 서버 인증서 유효성 검사에 대한 ServicePointManager 전화를 설정해야 나타납니다.

이것은`-allowUntrustedCertificate`을 처리 할 때 msdeploy.exe가하는 일입니다
ServicePointManager.ServerCertificateValidationCallback = (s, c, chain, err) => 
{ 
    return true; 
}; 
+1

, 그래서 확실히 정답입니다 : 내가 MSDeploy가 작동하는 것 같다 호출하기 전에

아래 배치. –