获取所有使用的 CA 策略,
$uri = "https://graph.microsoft.com/beta/identity/conditionalAccess/policies"
$response = Invoke-MgGraphRequest -Uri $uri -Method GET -Headers $CustomHeader -OutputType PSObject
以财产为例,
$response.value[0].conditions.applications.includeApplications
列出应用程序 ID,而不是应用程序显示名称。
Get-MgApplication -all
仅返回自定义应用程序,而不返回 Azure 默认应用程序。 找到这个链接, https://github.com/emilyvanputten/Microsoft-Owned-Enterprise-Applications/blob/main/Microsoft%20Owned%20Enterprise%20Applications%20Overview.md 有帮助但不完整。
关于如何使用 Graph 或 (Azure) PowerShell 模块获取 Azure 默认应用程序列表有什么想法吗?
谢谢...
我的应用程序中包含一些条件访问策略,如下所示:
要获取所有 Azure 条件访问策略中应用程序 ID 的显示名称,您可以使用以下示例 PowerShell 脚本:
$uri = "https://graph.microsoft.com/beta/identity/conditionalAccess/policies"
$response = Invoke-MgGraphRequest -Uri $uri -Method GET -Headers $CustomHeader -OutputType PSObject
$AppIds = @()
# Iterate through each policy to extract application IDs
foreach ($policy in $response.value) {
$applicationIds = $policy.conditions.applications.includeApplications
$AppIds += $applicationIds | Where-Object { $_ -notin $AppIds }
}
$output = @()
foreach ($appId in $AppIds) {
$servicePrincipals = Get-MgServicePrincipal -Filter "appId eq '$appId'"
foreach ($sp in $servicePrincipals) {
$output += [PSCustomObject]@{
'Application DisplayName' = $sp.displayName
'AppId' = $sp.appId
}
}
}
$output | Format-Table -AutoSize
回复: