使用Microsoft Graph API拉取员工信息遇Authorization_RequestDenied错误求助
匹配权限类型与调用流
如果你用的是客户端凭据流(后台无用户登录的服务调用),必须确保管理员给的是应用权限(Application Permissions),而非委派权限。委派权限依赖用户上下文,客户端凭据流无法使用这类权限。确认权限已完成管理员同意
哪怕添加了正确的应用权限,管理员必须在Azure AD应用注册界面点击「授予管理员同意」,权限才会生效。只添加权限但未完成同意操作,依然会触发权限不足错误。检查权限范围是否覆盖需求
拉取员工信息通常需要User.Read.All或Directory.Read.All这类应用权限。对照附图确认是否包含对应权限:如果仅需读取用户基础信息,User.Read.All足够;若需读取部门、组等目录资源,可能需要Directory.Read.All。验证API请求的scope设置
客户端凭据流的请求scope必须设为https://graph.microsoft.com/.default,不要使用委派权限的scope(比如User.Read),否则会导致权限不匹配。确认租户范围与应用注册一致
管理员授予权限时,要确保是在你所在的组织租户内完成的同意操作。若应用为多租户类型,需确认请求中使用的租户ID正确,且管理员已在对应租户完成权限同意。等待权限同步生效
权限授予后Azure AD可能需要5-10分钟同步,建议等待一段时间后再重新测试API调用。
内容的提问来源于stack exchange,提问作者Pankaj Potdar
相关产品推荐
相关产品推荐

