如何通过Azure CLI识别资源组中未使用的用户托管标识
筛选资源组内未关联任何资源的用户托管标识
你可以通过结合Azure CLI命令与bash循环实现需求,替换<your-resource-group>为你的资源组名称后,执行以下命令:
RESOURCE_GROUP="<your-resource-group>" az identity list --resource-group $RESOURCE_GROUP --query "[].{name:name, id:id}" -o tsv | while read NAME ID; do ASSOCIATED_COUNT=$(az identity list-resources --id $ID --query "length(@)" -o tsv) if [ $ASSOCIATED_COUNT -eq 0 ]; then echo "未使用的用户托管标识: $NAME ($ID)" fi done
命令说明:
az identity list:列出指定资源组下所有用户托管标识,提取名称与资源IDaz identity list-resources --id $ID:查询该托管标识关联的所有资源length(@):用JMESPath语法统计关联资源的数量- 循环判断关联数是否为0,输出对应的未使用标识信息
若只需输出标识名称,将echo行修改为echo "$NAME"即可。
内容的提问来源于stack exchange,提问作者Nivazz
相关产品推荐
相关产品推荐

