You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何获取Azure订阅下Application Insights实例的访问权限人员报表?

是否支持导出Azure订阅下所有Application Insights实例的访问权限人员报表

完全支持,目前有两种常用的实现方式,分别适配无代码操作和自定义批量导出的需求:

方法1:Azure门户图形化导出(适合临时查询、无代码基础的场景)

  • 登录Azure门户后,进入你需要查询的目标订阅详情页,点击左侧菜单的「访问控制(IAM)」
  • 切换到「角色分配」标签页,点击页面顶部的「添加过滤器」,设置筛选条件:资源类型 = Application Insights
  • 筛选完成后,列表会展示当前订阅下所有Application Insights实例的权限条目,包括实例直接分配的权限,以及从订阅、资源组继承的上层权限
  • 若只需要查看直接分配给实例的权限,可以再加一层筛选条件:分配类型 = 显式,过滤掉继承的权限条目
  • 确认列表内容符合需求后,点击页面顶部的「下载」按钮,即可直接导出为CSV格式的报表,报表包含权限主体名称、邮箱、角色、对应实例名称、权限范围等核心信息

注意:执行该操作的账号需要至少具备订阅级的读者权限,才能拉取所有Application Insights实例的权限数据。

方法2:Azure PowerShell脚本导出(适合自定义字段、定期导出的场景)

如果需要自定义报表字段,或者要定期执行导出任务,可以用PowerShell脚本实现:

  • 首先打开已安装Az模块的PowerShell终端,执行如下脚本,执行前替换脚本中的租户ID、订阅ID为你实际的资源信息:
# 未登录Azure的话先执行连接命令
Connect-AzAccount -Tenant "替换为你的租户ID"
# 切换到目标订阅
$subscriptionId = "替换为你的目标订阅ID"
Set-AzContext -SubscriptionId $subscriptionId
# 获取当前订阅下所有Application Insights资源
$allAiInstances = Get-AzResource -ResourceType "Microsoft.Insights/components"
$permissionReport = @()
# 遍历每个实例拉取权限
foreach ($instance in $allAiInstances) {
    $roleAssignments = Get-AzRoleAssignment -Scope $instance.Id
    foreach ($assignment in $roleAssignments) {
        $permissionReport += [PSCustomObject]@{
            实例名称 = $instance.Name
            所属资源组 = $instance.ResourceGroupName
            权限主体名称 = $assignment.DisplayName
            主体类型 = $assignment.ObjectType
            分配角色 = $assignment.RoleDefinitionName
            权限分配范围 = $assignment.Scope
        }
    }
}
# 导出到本地CSV文件
$permissionReport | Export-Csv -Path "./ApplicationInsights权限报表.csv" -Encoding UTF8 -NoTypeInformation
  • 脚本执行完成后,会在当前运行目录生成对应的CSV报表文件,你可以根据自己的需求调整脚本里的自定义字段。

补充说明

  • 要是只需要导出用户类型的权限,不需要服务主体、安全组的权限,可以在导出前增加过滤条件,只保留主体类型 = User的条目即可。
  • 如果要导出多个订阅的数据,只需要在脚本外层加一层订阅遍历的逻辑即可。

内容的提问来源于stack exchange,提问作者Suri007

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 15:06:03