You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Outlook插件中OfficeRuntime.auth.getAccessToken报错问题咨询

Outlook插件中OfficeRuntime.auth.getAccessToken失效的原因及修复

问题根源:Outlook与Excel的SSO机制差异

同样代码和权限配置在Excel正常、Outlook报错API Not Supported(错误码13000),本质是Outlook对插件单点登录(SSO)的启用要求、manifest规则和Excel不一样,导致身份验证API没被正确激活。

排查与修复步骤

1. 检查Manifest配置的完整性

Outlook插件启用SSO必须在manifest.xml里正确配置<WebApplicationInfo>节点,注意:

  • 这个节点必须放在针对Outlook的<Host>节点下(也就是<VersionOverrides>→<Hosts>→<Host xsi:type="Mail">内部),不能直接复用Excel的配置结构。
  • 确保<Id>(Azure AD应用ID)、<Resource>(一般填https://graph.microsoft.com)、<Scopes>(比如Mail.Read、User.Read这类Graph权限)和Azure AD应用注册的信息完全匹配。
  • 还要确认<Permissions>节点声明了Outlook所需的权限,比如ReadWriteMailbox,别漏了身份验证相关的权限声明。

2. 验证Outlook客户端的SSO支持情况

OfficeRuntime.auth.getAccessToken只在以下Outlook环境中可用:

  • 微软365订阅版的桌面客户端(版本2008及以上)
  • Outlook网页版(必须是Exchange Online环境)
  • 不支持本地Exchange服务器部署的Outlook,或者旧版批量许可的Outlook(比如2016非订阅版)

如果你的测试环境是不支持的版本,肯定会触发13000错误。

3. 适配getAccessToken的调用参数

在Outlook里调用这个方法时,最好显式指定资源参数,比如:

OfficeRuntime.auth.getAccessToken({
  allowSignInPrompt: true,
  allowConsentPrompt: true,
  resource: "https://graph.microsoft.com"
})

Excel可能会默认处理资源参数,但Outlook需要明确声明,否则API会识别不了身份验证请求。

4. 检查Azure AD应用注册配置

确保Azure AD应用注册满足:

  • 添加了Outlook插件专用的重定向URI,格式是https://outlook.office.com/owa/{你的插件ID}/auth/callback
  • 已授予并获得管理员同意的Graph权限(尤其是Outlook相关的,比如Mail.Read)
  • 应用的“支持的账户类型”设置和插件部署范围匹配(比如组织账户或所有账户)

后端报错的关联说明

后端的jwt must be provided错误是前端没拿到accessToken导致的连锁问题,只要解决前端getAccessToken的调用问题,后端的JWT缺失问题自然就解决了。


内容的提问来源于stack exchange,提问作者Wladefant

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 12:43:31