2010-01-14 70 views
1

我們有一個功能,將文件發送到公共服務器使用設在C#X509證書,但問題是在接收端cert沒有被拾起。我們收到一條403.7的消息,說明未提供證書。 添加證書的代碼如下:x509證書沒有得到傳輸到服務器

 try 
     { 
      X509Certificate certificate = X509Certificate.CreateFromCertFile(certificatePath); 
      httpWebRequest.ClientCertificates.Add(certificate); 
     } 
     catch (Exception CertificateException) 
     { 
      return "Failed to add certificate to post:" + certificatePath + " " + CertificateException.Message; 
     } 

任何想法

+0

是否檢查'certificate'對象顯示一切裝好嗎?您可以嘗試運行Wireshark並查看發送的內容。 – 2010-01-14 21:28:04

回答

2

是否證書有一個對應的私鑰? X509Certificate.CreateFromCertFile不支持加載證書與私鑰。你需要得到從證書庫中使用私鑰或可能從一個PFX文件 - http://msdn.microsoft.com/en-us/library/ms148420.aspx

+0

是的,我已經想出了這個問題,但找到了它的好工作! +1 :) – greektreat 2010-01-18 19:28:52