我有使服務器端調用到另一個Web服務的代碼。在許多情況下,這是通過SSL。當星星不完全對齊時,我們遇到了問題,即失敗。我意識到必須信任證書,並且可能必須將內部證書頒發機構(CA)手動導入服務器上的受信任根證書存儲區。但是,還有其他的情況。今天我遇到了在那裏,如果我使用一個瀏覽器打網址我得到一個警告,說明一個問題,即:我可以編碼HTTP請求以解決SSL警告嗎?
安全證書的名稱無效或不匹配的站點名稱
這只是一個警告,您可以通過瀏覽器確認並告訴它繼續訪問該網站。
但是,它似乎阻止我的代碼工作。這裏是我的代碼的精簡版:
HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest;
request.Credentials = new NetworkCredential(user, password);
HttpWebResponse response = request.GetResponse() as HttpWebResponse;
在看着我HttpWebRequest沒有看到任何明顯的,這將有助於我了,我現在還沒有在我的開發環境中不斷嘗試新東西出來的奢侈品。是否有一個簡單的改變,我可以解決這個問題?還有其他類似的問題,我可以防止這種方式呢?
謝謝,皮特。我需要創建一個快速測試程序,交給客戶端,看看它是否有效。我可能需要一段時間才能做到這一點,但我會在一次嘗試後發佈回覆。 – 2011-04-28 15:58:07
已驗證。這解決了這個問題。我編輯了您的迴應與代碼的作品。我認識到這不太安全,並且可以使其成爲可配置的選項,客戶可以選擇要覆蓋哪個SSLPolicyError。 – 2011-04-28 20:25:28