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

执行Get-AzureADApplication报Authentication_Unauthorized错误排查

「User was not found」报错含义

该提示并非指你当前登录的账号不存在,是AzureAD模块调用的后端Azure AD Graph接口在鉴权时,无法在当前令牌绑定的租户上下文中匹配到有效、有权限的用户主体,属于鉴权上下文类错误,和你是否分配全局管理员角色没有直接关联。

常见诱因
  • 执行Connect-AzureAD时未指定目标租户,模块自动选择了账号所属的主租户,而你需要查询应用列表的目标租户和当前连接的租户不一致,目标租户内不存在你的账号主体,直接触发报错。
  • 本地缓存了过期、无效的Azure AD身份令牌,即使重新执行登录命令,模块仍调用旧缓存的令牌发起请求,鉴权失败。
  • 目标租户开启了Azure管理门户访问限制,仅允许指定范围的用户调用管理接口,即使账号被分配全局管理员角色,未被纳入允许范围时接口侧无法识别到有效用户身份。
  • 全局管理员角色为近期刚分配,角色声明未同步到签发的身份令牌中,接口校验时无法识别到账号的有效权限。
  • 本地安装的AzureAD模块版本过低,多租户场景下的鉴权逻辑存在已知bug。
排查解决步骤

按顺序操作即可覆盖绝大多数场景:

  1. 清理现有连接与本地身份缓存
    Disconnect-AzureAD -ErrorAction SilentlyContinue
    Remove-Item -Path "$env:USERPROFILE\.azure\*" -Recurse -Force -ErrorAction SilentlyContinue
    
  2. 明确指定目标租户ID重新登录,不要使用无参数的默认登录方式
    # 将参数值替换为你要操作的目标租户ID,或租户的默认域名(格式为xxx.onmicrosoft.com)
    Connect-AzureAD -TenantId "替换为实际租户ID"
    
  3. 校验当前会话上下文是否正确,确认返回的TenantId字段和你要操作的目标租户一致
    Get-AzureADCurrentSessionInfo
    
  4. 若上下文校验正确仍报错,升级AzureAD模块到最新版本,修复旧版本鉴权bug
    Install-Module -Name AzureAD -Force -AllowClobber -Scope CurrentUser
    
  5. 进入目标租户的AAD管理面板,打开「用户设置-管理门户访问限制」配置项,检查是否开启了用户访问范围限制,若开启则将当前操作账号加入允许列表。
  6. 若为刚分配的全局管理员角色,关闭当前PowerShell窗口,等待15-30分钟待角色权限完成全租户同步后,重新执行登录和查询操作。

补充说明:AzureAD模块已进入官方弃用周期,长期使用建议迁移到Microsoft Graph PowerShell模块,执行Connect-MgGraph -Scopes Application.Read.All授权后,通过Get-MgApplication命令即可查询应用注册列表,新模块的多租户鉴权逻辑更稳定,这类上下文错误出现概率极低。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 08:01:11