已授予Microsoft Teams自定义标签权限,但访问令牌中未包含该权限
解决Graph API访问令牌未包含已配置权限的问题
已配置权限
- 委派权限:
TeamworkTag.ReadTeamworkTag.ReadWriteTeamwork.Read.All
- 应用权限:
Teamwork.Read.AllTeamworkTag.ReadWrite.All
当前调用接口:GET https://graph.microsoft.com/v1.0/teams/{team-id}/tags,经jwt.ms验证,访问令牌未包含上述已配置权限,可按以下步骤排查:
排查解决步骤
确认权限完成管理员同意
进入Azure AD应用注册的「API权限」页面,检查所有已配置权限右侧是否显示「已授予[租户名]同意」:- 应用权限必须由全局管理员或对应权限角色完成租户级同意;
- 委派权限若需租户内所有用户可用,也需管理员完成同意,仅个人同意的权限可能受范围限制。
校验令牌请求参数
- 若使用客户端凭据流(应用权限),请求令牌时的
scope参数必须设为https://graph.microsoft.com/.default,该参数会自动包含所有已授予的应用权限; - 若使用授权码/隐式流(委派权限),请求时的
scope需明确指定所需权限,例如https://graph.microsoft.com/TeamworkTag.Read Teamwork.Read.All,不能仅使用user.read这类默认权限。
- 若使用客户端凭据流(应用权限),请求令牌时的
匹配权限类型与调用流
- 调用
GET /teams/{team-id}/tags时,使用应用权限需对应客户端凭据流;使用委派权限需确保登录用户为团队成员,且令牌请求的是委派权限范围。
- 调用
重新获取访问令牌
旧令牌不会自动同步新配置的权限,需重新发起令牌请求,再用jwt.ms验证是否包含目标权限。确认权限与接口的匹配性
GET /teams/{team-id}/tags接口支持的权限:- 委派权限:
TeamworkTag.Read、TeamworkTag.ReadWrite - 应用权限:
TeamworkTag.ReadWrite.All
确保已配置权限与接口要求完全匹配,避免配置无关权限。
- 委派权限:
内容的提问来源于stack exchange,提问作者Harish Verma
相关产品推荐
相关产品推荐

