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

如何通过Azure CLI获取已启用Service Principals的正确方法?

获取已启用Azure服务主体(Service Principal)的正确方法

你遇到的问题主要有两个原因:一是accountEnabled属性是布尔值(而非字符串),二是Azure CLI返回的JSON属性名是小驼峰accountEnabled,且输出需要先转为PowerShell对象才能正确筛选。下面是两种可行的解决方法:

方法一:修正PowerShell筛选逻辑

先将Azure CLI的JSON输出转换为PowerShell对象,再匹配布尔类型的true:

az ad sp list | ConvertFrom-Json | Where-Object { $_.accountEnabled -eq $true }

方法二:使用Azure CLI内置筛选(更高效)

直接通过--filter参数在服务端完成筛选,无需本地处理,性能更优:

az ad sp list --filter "accountEnabled eq true"

额外说明

  • 确认属性名大小写:Azure CLI返回的属性是小驼峰accountEnabled,不要写成首字母大写的AccountEnabled;
  • 布尔值无需加引号:$true是PowerShell的布尔常量,和JSON里的布尔值true对应,用字符串'true'匹配会失败。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.15 11:49:54