A certificate validation operation took X milliseconds and has exceeded the execution time threshold.

(簡體中文版錯誤訊息為:  证书验证操作花费了X毫秒,超过了执行时间阈值。如果此情况继续发生,则可能表示存在配置问题)

 

如果你的Sharepoint場跟我的一樣, 是在內聯網, 即是沒有連上Internet, 那麼你在Event log上會看到如題的錯誤訊息。

cert_validate_error

原因是SharePoint自己有3張 (最少我看到的只有3張)

sharepoint_cert

SSL certificate 需要找尋發行者 (Issuer), 預設在本機找不到的話, 就會上網去Microsoft的網站 (crl.microsoft.com) 去找, 因此, 有連上Internet的SharePoint site是不會遇上此問題的。

參考KB: http://support.microsoft.com/kb/2625048
執行此兩行Powershell:

$rootCert = (Get-SPCertificateAuthority).RootCertificate
$rootCert.Export(“Cert") | Set-Content C:\SharePointRootAuthority.cer -Encoding byte

把匯出的cer檔Import到受信任的根憑證授權單位(Trusted Root Certificate Authorities)

sharepoint_root_cert

之後, 原本沒有根憑證的三張SharePoint Cert現在就健全了:

sharepoint_cert_completed

還有在 KB: http://support.microsoft.com/kb/2625048 的方法二(更改Local Policy下某個Certificate path validation settings), 我沒有用, 因為很多公司不容許你改Policy的, 而且改了預設Policy可能會造成其他影響, 少改為妙。 但如果還是想改的話, 下圖給你參考:

cert_validate_policy

廣告

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

您的留言將使用 WordPress.com 帳號。 登出 / 變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 / 變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 / 變更 )

Google+ photo

您的留言將使用 Google+ 帳號。 登出 / 變更 )

連結到 %s

%d 位部落客按了讚: