如果 Exchange Server OAuth 憑證已過期,則無法登入 Outlook 網頁版或 EAC
原始 KB 編號: 2617816
徵狀
當您嘗試登入至 Outlook 網頁版或 Exchange Server 中的 EAC 時,網頁瀏覽器會凍結,或顯示已達到重新導向限制的報告。 此外,已在事件檢視器中記錄事件 1003。 例如,會記錄下列項目:
事件識別碼:1003
來源: MSExchange 前端 HTTPS Proxy
[Owa] 發生內部伺服器錯誤。 未處理的例外狀況為: System.NullReferenceException: 並未將物件參考設定為物件的執行個體。
於 Microsoft.Exchange.HttpProxy.FbaModule.ParseCadataCookies(HttpApplication httpApplication)
注意事項
EAC 已在 Exchange Server 2013 中引進,可取代 Exchange Management Console (EMC) 和 Exchange Control Panel (ECP),即 Exchange Server 2010 中的兩個管理介面。
原因
如果 Exchange Server 開放驗證 (OAuth) 憑證已過期、不存在或未正確設定,就會發生此問題。
解決方案
若要檢查現有 OAuth 憑證的狀態,請在 Exchange 管理命令介面中執行下列命令:
(Get-AuthConfig).CurrentCertificateThumbprint | Get-ExchangeCertificate | Format-List
如果命令傳回錯誤,或憑證已過期,請使用下列步驟來建立新的 OAuth 憑證並將其部署至 Exchange 伺服器:
請執行下列命令來建立新的 OAuth 憑證:
New-ExchangeCertificate -KeySize 2048 -PrivateKeyExportable $true -SubjectName "cn=Microsoft Exchange Server Auth Certificate" -FriendlyName "Microsoft Exchange Server Auth Certificate" -DomainName @()
設定伺服器驗證的新憑證。 若要執行這項操作,請執行下列命令:
Set-AuthConfig -NewCertificateThumbprint <ThumbprintFromStep1> -NewCertificateEffectiveDate (Get-Date) Set-AuthConfig -PublishCertificate Set-AuthConfig -ClearPreviousCertificate
重新啟動 Microsoft Exchange 服務主機服務。
執行
IISReset
命令以重新啟動 IIS,或 (在提升權限的模式中) 執行下列命令,以回收 Outlook 網頁版和 EAC 應用程式集區:Restart-WebAppPool MSExchangeOWAAppPool Restart-WebAppPool MSExchangeECPAppPool
注意事項
在某些環境中,發佈 OAuth 憑證可能需要一小時的時間。 如果您有混合式設定,則必須再次執行混合式設定精靈,以將變更更新為 Microsoft Entra ID。
其他資訊
若要檢查憑證到期日,請依照下列步驟執行:
開啟 Microsoft Management Console。 為此,請開啟 [執行] 方塊 (Windows 標誌鍵+R) ,輸入 MMC,然後按 [Enter] 鍵。
注意事項
若提示您輸入系統管理員密碼或確認,請輸入密碼或選擇 [是]。
選取 [檔案]> [新增/移除嵌入式管理單元]> [選取憑證]> [新增]> [電腦帳戶],然後選取 [完成] 以關閉視窗。
在 [個人]> [憑證] 資料夾中尋找 [Microsoft Exchange Server 驗證] 項目,並確認到期日。