2015-10-30 176 views
1

最近,在發送電子郵件我曾面臨一個錯誤:ServicePointManager.ServerCertificateValidationCallback的用途是什麼?

遠程證書根據使用

驗證程序是無效的,我發現瞭解決這一here其完美地工作,但不要不知道它究竟做了什麼。所以,任何人都可以解釋我下面的代碼實際上做了什麼?爲什麼代碼被稱爲黑客?

代碼:

ServicePointManager.ServerCertificateValidationCallback = 
delegate(object s, X509Certificate certificate, 
     X509Chain chain, SslPolicyErrors sslPolicyErrors) 
{ return true; }; 

回答

2

這是一個代表你提供給確定證書是否有效或無效的ServicePointManager。返回true將表示證書始終有效。

您必須知道的這是一個嚴重的安全隱患。任何人都可以自行簽發證書並進行中間人攻擊。

+0

這是否需要管理員權限才能運行? –

+0

號爲什麼要這樣?它只是規避了應用程序證書檢查。 –

+0

有沒有辦法阻止「證書自我頒發」? –