You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure Graph API权限问题:PowerShell脚本执行遇403禁止访问

解决方案:Graph API 403 Authorization_RequestDenied 错误排查(全局管理员权限下)

1. 确认Graph API权限范围

即使是全局管理员角色,Connect-MgGraph默认获取的权限可能不足以执行用户修改操作,需明确指定所需权限:

  • 重新连接时添加权限参数:
    Connect-MgGraph -TenantId $TenantId -Scopes "User.Read.All", "User.ReadWrite.All" -ErrorAction Stop
    
  • 运行Get-MgContext查看当前会话的Scopes字段,确认包含上述权限。

2. 排查租户条件访问策略

租户可能存在限制Graph API或PowerShell客户端的条件访问规则:

  • 登录Azure AD门户,进入安全 > 条件访问,检查是否有针对Microsoft Graph或PowerShell客户端的拒绝策略。
  • 临时禁用可疑策略测试,或添加脚本运行账户/设备到策略例外列表。

3. 验证全局管理员权限有效性

  • 确认账户未被纳入管理员单元(若配置了管理员单元,可能会限制全局权限的生效范围)。
  • 换用另一个全局管理员账户运行脚本,排除单个账户的权限异常。

4. 检查Microsoft Graph PowerShell应用的权限配置

  • 登录Azure AD门户,进入应用注册 > 所有应用,找到名为Microsoft Graph PowerShell的应用。
  • 查看其API权限,确保User.ReadWrite.All权限已被授予且完成管理员同意。若未同意,选中权限后点击「授予管理员同意」。

5. 验证域名修改权限

  • 确认@X.onmicrosoft.com是租户的默认域名,且允许用户UPN修改到该域名。
  • 手动尝试修改一个用户的UPN(从主域名切换到@X.onmicrosoft.com再切回),排除脚本逻辑外的域名限制。

6. 更新Microsoft Graph PowerShell模块

旧版本模块可能存在兼容性问题:

  • 运行以下命令更新模块:
    Update-Module Microsoft.Graph -Force
    
  • 用Get-Module Microsoft.Graph -ListAvailable确认已安装最新版本。

内容的提问来源于stack exchange,提问作者Diego Satizabal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 02:23:12