如果 Exchange Server OAuth 证书已过期,则无法登录到 Outlook 网页版 或 EAC

症状

尝试在 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 中运行以下命令:

PowerShell复制

(Get-AuthConfig).CurrentCertificateThumbprint | Get-ExchangeCertificate | Format-List

如果命令返回错误或证书已过期,请使用以下步骤新建 OAuth 证书并将其部署到 Exchange Server:

  1. 运行以下命令新建 OAuth 证书:PowerShell复制New-ExchangeCertificate -KeySize 2048 -PrivateKeyExportable $true -SubjectName "cn=Microsoft Exchange Server Auth Certificate" -FriendlyName "Microsoft Exchange Server Auth Certificate" -DomainName @()
  2. 设置服务器身份验证的新证书。 为此,请运行以下命令:PowerShell复制Set-AuthConfig -NewCertificateThumbprint <ThumbprintFromStep1> -NewCertificateEffectiveDate (Get-Date) Set-AuthConfig -PublishCertificate Set-AuthConfig -ClearPreviousCertificate
  3. 重启 Microsoft Exchange 服务主机服务。
  4. 运行 IISReset 命令重启 IIS 或运行以下命令(在提升模式下)以回收 Outlook 网页版和 EAC 应用程序池:PowerShell复制Restart-WebAppPool MSExchangeOWAAppPool Restart-WebAppPool MSExchangeECPAppPool  备注在某些环境中,发布 OAuth 证书可能需要一个小时。 如果有混合设置,则必须再次运行混合配置向导,以更新对 Microsoft Entra ID 所做的更改。

更多信息

要查看证书的到期日期,请执行以下步骤:

  1. 打开 Microsoft 管理控制台。 为此,请打开“运行”框(Windows 徽标键+R),输入“MMC”,然后按 Enter。 备注如果系统提示输入管理员密码或进行确认,请键入密码,或选择“是”。
  2. 依次选择“文件”>、“添加/删除管理单元”>、“选择证书”>、“添加”>、“计算机帐户”,然后选择“完成”关闭窗口。
  3. 在“个人”>“证书”文件夹中查找“Microsoft Exchange Server 身份验证证书”条目,并验证到期日期。

https://learn.microsoft.com/zh-cn/exchange/troubleshoot/administration/cannot-access-owa-or-ecp-if-oauth-expired

© 版权声明
THE END
喜欢就支持一下吧
点赞8 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容