2011-04-08 76 views
0

我在獲取託管服務列表時遇到問題。我的代碼如下:與Azure服務管理API連接時出現證書問題

string requestUrl = "https://management.core.windows.net/" + SubscriptionID + "/services/hostedservices"; 

     string ReturnBody = string.Empty; 
     WebResponse resp = null; 
     try 
     { 
      ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3; 
      NameValueCollection RequestHeaders = new NameValueCollection(); 
      RequestHeaders.Add("x-ms-version", x_ms_version); 
      X509Certificate cert = X509Certificate.CreateFromCertFile(CertificatePath); 
      HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(requestUrl); 
      request.Method = "GET"; 
      request.ClientCertificates.Add(cert); 
      request.KeepAlive = false; 
      request.ProtocolVersion = HttpVersion.Version10; 
      if (RequestHeaders != null) 
       request.Headers.Add(RequestHeaders); 
      resp = request.GetResponse();    
     } 
     catch (WebException webEx) 
     { 
      //ERROR: The request was aborted: Could not create SSL/TLS secure channel.」 error. 
     } 
     catch (Exception excep) 
     { 

     } 
     finally 
     { 
      if (resp != null) { resp.Close(); } 
      resp = null; 
     } 

我得到「請求已中止:無法創建SSL/TLS安全通道」上面的代碼運行時......對此 一個starnge一點是相同的代碼工作在我的一個WPF應用程序中很好,但在Web應用程序中發生錯誤。 因此,它可能會出現IIS安全問題,我已經通過向該文件夾的每個人授予權限而取得了不成功的嘗試。

在此先感謝您的想法。

納雷什Goradara

回答

1

我相信我回答了這個問題,在MSDN論壇:http://social.msdn.microsoft.com/Forums/en-US/windowsazuredata/thread/5e6a2cfd-c2b6-4880-a79c-4bf39f4d7ca8/#b427afb6-d68f-4591-8466-870e791b43c9

你試試我提出的建議?那之後甚至會發生什麼錯誤?

拉夫

+0

嗨,拉夫,我已完全進入我的VD,但仍然沒有工作。 – 2011-04-08 05:25:49

+0

Naresh - >其實你需要提供完整的證書訪問權限。因此,您要做的是找到證書文件,右鍵單擊,然後在安全選項卡下爲Everyone提供完整權限。這應該夠了吧。 – 2011-04-08 05:29:16

+0

@Gaurav;仍然出現錯誤:遠程服務器返回錯誤:(403)禁止。 可能是什麼問題? – 2011-04-08 05:54:31