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

MS Teams应用安装后报manifest与iframe origin不匹配错误如何修复

MS Teams应用「App resource defined in manifest and iframe origin do not match」错误解决方案

该错误的核心是Teams加载应用时,manifest声明的资源标识、Azure AD配置与iframe实际加载的源三者不匹配,可按照以下步骤逐一排查修复:

  • 修正webApplicationInfo的resource字段格式
    标准resource格式为 api://<你的应用前端实际部署的完整域名>/<Azure AD应用客户端ID>,不能使用https://xxxxx.onmicrosoft.com/xxx格式,也不能仅修改协议为api://却保留onmicrosoft域名。例如你将应用部署在app.example.com,Azure AD客户端ID为bae.....a8,则正确配置为:
    "webApplicationInfo": {
      "id": "bae.....a8",
      "resource": "api://app.example.com/bae.....a8"
    }
    
  • 对齐Azure AD端的公开API配置
    进入Azure AD应用注册的「公开API」页面:
    • 将「应用ID URI」设置为和上述resource完全一致的值,不能有任何字符差异
    • 添加两个官方Teams客户端的授权,客户端ID分别为1fec8e78-bce4-4aaf-ab1b-5451cc387264(Teams桌面/移动端)、5e3ce6c0-2b1f-4285-8d4b-75ee78787346(Teams网页端),为两个客户端授予access_as_user权限并开启管理员同意
  • 校验Teams应用manifest的其他匹配项
    • 静态标签页的contentUrl的域名、协议必须和resource中的域名完全一致,必须使用https协议,不能出现子域名、端口不匹配的情况
    • manifest的validDomains字段必须包含你应用前端部署的完整域名,不能遗漏
  • 排查iframe源异常
    • 确认你配置的contentUrl不会自动跳转到其他域名,如果存在跳转,需要将跳转后的域名同步更新到resource和validDomains中
    • 清理本地调试残留的localhost配置,所有生产环境配置都要替换为实际部署的域名
  • 验证SSO初始化逻辑
    • 确保页面加载完成后第一时间调用Teams SDK的初始化方法,v1版本调用microsoftTeams.initialize(),v2版本调用microsoftTeams.app.initialize()
    • 静态标签页的inTeamsSSO=true参数保留即可,无需修改

配置修改完成后,删除Teams中已安装的旧版本应用,重新打包manifest上传安装,避免缓存导致配置不生效。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 02:00:02