在Azure Active Directory申请Graph API用户创建应用权限失败
Azure AD 分配Graph API用户创建权限报错「not granted for organization」解决方案
- 首先确认权限类型与权限项选择正确
要实现无用户交互的服务端用户创建逻辑,必须在Graph API权限面板选择应用权限类型下的User.ReadWrite.All或Directory.ReadWrite.All权限,选择委托权限会无法完成租户级授权,触发报错。 - 确认操作账号具备对应管理员权限
分配上述高权限Graph API权限,操作账号必须持有Azure AD的全局管理员、特权角色管理员或云应用管理员角色,普通用户、普通应用管理员无权限完成租户级授权。 - 完成权限选择后必须执行管理员同意操作
选中对应权限并保存后,必须点击权限列表上方的「为<你的租户名称>授予管理员同意」按钮,确认后权限状态才会更新为「已授予」,未执行该步骤的权限仅为待授权状态,调用时会触发对应报错。 - 排查租户权限限制策略
若执行上述步骤仍报错,可检查Azure AD权限管理模块是否配置了限制高权限应用权限授予的自定义策略,如有相关策略可临时豁免当前应用后重试授权。 - 可通过PowerShell命令行强制授权
若Azure门户出现交互故障,可通过Microsoft Graph PowerShell模块手动完成授权,参考命令如下:# 登录持有全局管理员权限的账号 Connect-MgGraph -Scopes "AppRoleAssignment.ReadWrite.All","Application.Read.All" # 替换对应参数后执行权限分配 New-MgServicePrincipalAppRoleAssignment -ServicePrincipalId <你的应用服务主体ID> -PrincipalId <你的应用服务主体ID> -ResourceId <Graph API服务主体ID> -AppRoleId <对应User.ReadWrite.All权限的角色ID>
内容的提问来源于stack exchange,提问作者Sai Bhaskar
相关产品推荐
相关产品推荐

