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

Azure企业应用Object ID转显示名PowerShell脚本故障求助

解决Azure企业应用Object ID转显示名的PowerShell脚本问题

可能的问题原因及修复方案

1. 变量赋值逻辑冲突

直接覆盖$caller.caller会丢失原始的Object ID,后续如果需要复用ID会出问题,建议改用新变量存储结果:

$appDisplayName = (Get-AzADApplication -ObjectId $caller.caller).DisplayName
# 后续使用$appDisplayName即可,保留$caller.caller的原始Object ID

2. 权限不足

Get-AzADApplication需要Directory.Read.All或Application.Read.All的Azure AD权限,排查步骤:

  • 运行Connect-AzAccount重新登录,确保当前账号有权限读取企业应用信息
  • 若为自动化服务主体,需在Azure AD中给其分配对应的API权限

3. Object ID格式无效

先验证$caller.caller中的值是否为有效GUID:

Write-Host "当前待转换的Object ID: $($caller.caller)"

如果输出为空、格式错误(非标准GUID),先排查数据来源的正确性

4. Az模块版本兼容问题

旧版Az.Resources模块可能存在bug,更新模块后重试:

Update-Module -Name Az.Resources -Force

5. 混淆企业应用与服务主体

如果$caller.caller是服务主体的Object ID,需改用Get-AzADServicePrincipal:

$spDisplayName = (Get-AzADServicePrincipal -ObjectId $caller.caller).DisplayName

内容的提问来源于stack exchange,提问作者acorn-plain

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 10:35:29