是否可以 运行 一份报告来查看谁有权访问 Azure 订阅上的 Application Insights 实例?

Is it possible to run a report to see who has access to the Application Insights instances on the Azure Subscriptions?

是否可以运行一份报告以查看谁有权访问 Azure 订阅上的 Application Insights 实例?

如果有,那么如何获取?

您可以使用以下 PowerShell 脚本来检查特定资源组下特定应用程序见解的贡献者和所有者。

$resourceGroup = "RGNAME"
$resourceName = "AppInsightsName"
$resourceType = "microsoft.insights/components"
(Get-AzRoleAssignment -ResourceGroup $resourceGroup -ResourceType $resourceType -ResourceName $resourceName | Where-Object {$_.RoleDefinitionName -in @('Owner', 'Contributor') } | Select -ExpandProperty SignInName | Sort-Object -Unique) -Join ", "

如果为特定用户分配了 Application Insights component contributor 角色,他将有权访问特定订阅下存在的所有应用程序见解。

如果任何用户具有文档中列出的以下任何 RBAC roles 将能够访问应用程序见解。

根据 RBAC 角色,您可以尝试根据您的要求更改 PowerShell 脚本。

有关 Application Insights 中的资源、角色和访问控制的详细信息,请参阅此 documentation.