2016-09-08 43 views
1

我們在默認網站上使用客戶端證書身份驗證來驗證其客戶端的Web應用程序。它與客戶端證書進行握手握手失敗並出現超時或403錯誤 - 禁止:訪問被拒絕錯誤。 我們發現下面的系統事件日誌錯誤,403 - 禁止和服務器信任如此多的證書頒發機構,導致列表變長太長

當要求客戶端身份驗證,此服務器發送 受信任的證書頒發機構的列表到客戶端。客戶端使用此 列表來選擇服務器信任的客戶端證書。 目前,該服務器信任這麼多證書頒發機構,導致列表過長。這個列表因此被截斷。本機的管理員應該檢查可信的客戶端認證機構 ,並刪除那些確實不需要信任的機構。

IIS配置看起來更類似於我們已經爲在其他環境中,此Web應用程序做,我們驗證夫婦爲這個應用程序 在證書存儲所需的其它檢查:我們證實其權限的所有服務器證書和客戶端證書層次結構可用。 應用程序驗證:匿名 應用SSL設置:需要SSL /接受 對ApplicationHost.config:啓用OnetoOneMapping iisClientCertificateMappingAuthentication下還與服務映射添加的base64證書佔

我不知道該身份驗證問題與上面的錯誤消息做任何事在事件日誌中。

+0

您是否檢查Windows證書存儲 - > LocalMachine - >受信任的根證書頒發機構以及中間證書頒發機構列表?他們是否包含太多的CA? – Thuan

回答

0

我知道這可能爲時已晚,以幫助OP,但對於其他人與此事件日誌消息,有關於這個問題的良好結構後,在https://www.codit.eu/blog/2013/04/03/troubleshooting-ssl-client-certificate-issue-on-iis/,這表明:

有是解決此問題的兩種解決方案:

第一種解決方案是清理受信任的根證書頒發機構存儲(本地計算機)並刪除所有不必要的證書。請注意,您不會刪除Windows所需的證書。

第二個解決方案是將Schannel配置爲在TL​​S/SSL握手過程中不再發送受信任的根證書頒發機構列表。 SendTrustedIssuerList 值類型:REG_DWORD 值數據:0(假)

這可以通過在Web服務器上添加此註冊表項 HKEY_LOCAL_MACHINE \系統\ CurrentControlSet \控制\ SecurityProviders \ SCHANNEL

值名稱來完成

相關問題