如果 Exchange Server OAuth 证书已过期,则无法登录到 Outlook 网页版 或 EAC
原始 KB 编号: 2617816
症状
尝试在 Exchange Server 中登录到 Outlook 网页版 或 EAC 时,Web 浏览器会冻结或报告已达到重定向限制。 此外,事件查看器中会记录事件 1003。 例如,会记录以下条目:
事件 ID:1003
来源:MSExchange 前端 HTTPS 代理
[Owa] 出现内部服务器错误。 未处理的例外是:System.NullReferenceException:对象引用未设置为对象实例。
在 Microsoft.Exchange.HttpProxy.FbaModule.ParseCadataCookies(HttpApplication httpApplication)
注意
在 Exchange Server 2013 中引入了 EAC,并替换 Exchange 管理控制台 (EMC) 和 Exchange 控制面板 (ECP),它们是 Exchange Server 2010 中的两个管理界面。
原因
如果 Exchange Server 公开身份验证 (OAuth) 证书已过期、不存在或未正确配置,则会出现此问题。
解决方案
要查看现有 OAuth 证书的状态,请在 Exchange Management Shell 中运行以下命令:
(Get-AuthConfig).CurrentCertificateThumbprint | Get-ExchangeCertificate | Format-List
如果命令返回错误或证书已过期,请使用以下步骤新建 OAuth 证书并将其部署到 Exchange Server:
运行以下命令新建 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 管理控制台。 为此,请打开“运行”框(Windows 徽标键+R),输入“MMC”,然后按 Enter。
注意
如果系统提示输入管理员密码或进行确认,请键入密码,或选择“是”。
依次选择“文件”>、“添加/删除管理单元”>、“选择证书”>、“添加”>、“计算机帐户”,然后选择“完成”关闭窗口。
在“个人”>“证书”文件夹中查找“Microsoft Exchange Server 身份验证证书”条目,并验证到期日期。