MS Teams出现The tenant admin disabled this bot报错排查
问题根因
返回BotDisabledByAdmin的403错误和应用代码、发布版本无关,是出问题租户的多层管控配置未对齐导致的:
旁加载部署的测试包属于租户内上传的自定义应用,不会触发第三方应用全链路安全校验,因此测试阶段功能正常;从官方应用商店安装的正式版属于第三方发布应用,会经过Teams、Entra ID两层管控校验,只要任意一层配置拦截,就会返回该错误。
你已配置的Global (Org-wide default)应用权限策略只是其中一层管控,以下遗漏配置都会触发该报错:
- Teams管理中心的全局第三方应用开关未放开,或目标应用被加入了租户级应用阻止列表
- 目标用户未继承全局默认策略,被分配了自定义权限/设置策略,对应策略里未放开Beep的使用权限
- Entra ID侧关闭了用户对第三方应用的同意权限,直接拦截机器人的租户内请求
- 租户开启了第三方应用管理员审批流程,Beep未通过租户管理员审批就被用户安装
修复步骤
按顺序完成以下配置,每步配置后等待15-30分钟等待策略同步生效,再做功能验证:
- 登录故障租户的Teams管理中心,进入
Teams应用 > 管理应用页面,搜索找到Beep应用,确认应用状态为「允许」,若处于阻止状态手动修改为允许。 - 进入
Teams应用 > 权限策略页面,逐一检查对故障用户生效的所有策略(不要只检查全局默认策略,若用户被分配了自定义优先级更高的策略,需要修改对应策略):- 确认第三方应用权限设置为「允许所有第三方应用」,或在自定义允许应用列表中明确添加Beep
- 确认自定义应用上传权限未做额外限制
- 进入
Teams应用 > 设置策略页面,同样检查故障用户生效的对应策略,确认第三方应用的安装、使用权限未被拦截。 - 登录故障租户的Entra ID管理中心,进入
企业应用程序 > 同意和权限 > 用户同意设置页面,确认用户同意权限未设置为「不允许用户对任何应用授予同意」,该配置会静默拦截第三方机器人的消息请求,且不会在Teams管理中心提示配置异常。 - 若租户开启了第三方应用管理员审批规则,在Teams管理中心的应用管理页找到Beep,完成管理员审批流程。
- 所有配置生效后,让故障租户的用户完全退出Teams客户端(结束所有后台进程)后重新登录,移除已添加的Beep应用后重新添加即可恢复正常。
快速排查技巧:可以先用故障租户的全局管理员账号安装Beep测试,如果管理员账号使用正常,普通账号报403,100%是上述权限策略或同意配置的问题;如果管理员账号也报同样错误,优先检查应用是否被加入租户阻止列表。
内容的提问来源于stack exchange,提问作者GMAC
相关产品推荐
相关产品推荐

