我有很多服务原则没有得到应有的维护。它们用于不同的管道,只有上帝知道什么。
我正在尝试找出一种获取无效服务原则列表的方法。我可以通过使用获得所有服务原则Get-AzADServicePrincipal
,但这只会获得我的身份信息,而不是证书状态。
Azure Resource Graph 似乎也不会给我这些信息。
所以我想知道是否有一个我不知道的技巧来获取这些信息。
编辑:查看akb的答案后,脚本的第一部分将类似于
$value = Get-AzADServicePrincipal
$principleWithOutdatedCertList = [System.Collections.ArrayList]@()
$principlesWithNoCerts = [System.Collections.ArrayList]@()
for($num=1;$num -le $value.Count;$num++)
{
$cert = Get-AzADSpCredential -ObjectId $value[$num].Id
if ($cert.EndDate -lt (Get-Date)){
$principleWithOutdatedCertList.Add($value[$num].Id)
Write-Output $value[$num].Id
}
if($null -eq $cert)
{
$principlesWithNoCerts.Add($value[$num].Id)
}
}
现在只需将这些服务原则连接到所需的资源:)