Azure应用注册使用应用权限访问Azure AD组返回403错误排查
问题排查:Azure应用调用Graph API获取组列表返回403,令牌无Group.Read.All权限
你遇到的问题核心是配置的应用权限没有被包含在客户端凭据流获取的令牌中,导致调用Graph API时权限不足。以下是你可能遗漏的关键步骤:
未完成管理员同意
客户端凭据流使用的是应用权限,必须由全局管理员或特权角色管理员对Group.Read.All等权限进行管理员同意。仅在应用注册里添加权限但没点击同意的话,Azure AD不会把权限下发到令牌里。去Azure门户的应用注册→API权限页面,找到“授予[你的租户名]的管理员同意”按钮,确认同意后重新获取令牌。权限类型选错了
检查Group.Read.All的权限类型是不是应用权限。客户端凭据流只能用应用权限,委托权限是给用户上下文用的,不会出现在应用令牌里。在API权限页面看“类型”列,必须是“应用权限”才行。Scope参数写错了
你用的scope是api://graph.microsoft.com/.default,这不对。Graph API的应用权限正确scope应该是https://graph.microsoft.com/.default。把scope改成这个,重新获取令牌就能包含配置的权限了。权限配置未同步
刚添加权限后,Azure AD可能需要几分钟同步配置。如果是刚改完就测的话,等个5-10分钟再重新获取令牌试试。
令牌内容分析
你提供的JWT令牌里没有roles字段(应用权限会存在这个字段里),只有wids字段(对应应用被分配的内置角色),这说明当前令牌确实没有包含你配置的Group.Read.All等应用权限,进一步验证了上面的问题点。
内容的提问来源于stack exchange,提问作者Raj
相关产品推荐
相关产品推荐

