Azure 服务主体不会从 Azure CLI 中删除

问题描述 投票:0回答:1

我正在执行下面的代码,看来删除方法无法像列表方法那样检测到所有服务主体。还有其他人遇到过这个问题吗?

azure azure-cli azure-service-principal entra
1个回答
0
投票

默认情况下,

az ad sp list
仅列出前 100 个服务主体。因此,您需要使用
--all
标志来列出所有服务主体。

因此要解决错误,您需要使用

az ad sp list --all --query "[].appId" -o tsv
修改脚本,如下所示:

sp_list=$(az ad sp list --all --query "[].appId" -o tsv)
for sp_id in $sp_list;do
    echo "Deleting service principal: $sp_id" 
    az ad sp delete --id $sp_id
done
echo "All Service Principals deleted" 

对于 sample,我尝试使用

-all
标志 删除一些服务主体(因为我无法删除环境中的所有服务主体):

我尝试删除以下应用程序:

enter image description here

服务主体已成功删除:

sp_list=$(az ad sp list --all --query "[?displayName=='cli1' || displayName=='cli2' || displayName=='cli3' || displayName=='cli4' || displayName=='cli5'].appId" -o tsv)
for sp_id in $sp_list;do
    echo "Deleting service principal: $sp_id" 
    az ad sp delete --id $sp_id
done
echo "All Service Principals deleted" 

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.