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

如何列出启用了网络例外的Azure SQL PaaS服务器

解决Azure SQL PaaS网络信息无法通过Kusto查询获取的问题

你当前的查询目标是SQL数据库资源,但Azure SQL的网络配置(包括访问例外规则)是绑定在SQL Server实例层级的,不是单个数据库,所以查microsoft.sql/servers/databases自然看不到网络相关属性。

直接查询SQL Server的网络配置

用下面的Kusto语句可以获取包含网络规则的服务器信息:

resources
| where type == "microsoft.sql/servers"
| project 
    服务器名称 = name,
    资源组 = resourceGroup,
    区域 = location,
    网络设置 = properties.networkSettings,
    防火墙规则 = properties.firewallRules

关联数据库与对应服务器的网络信息

如果需要把数据库和它所属服务器的网络配置关联起来,可以用join:

// 先提取所有SQL Server的网络配置
let sqlServers = resources
| where type == "microsoft.sql/servers"
| project 
    serverName = name,
    resourceGroup,
    网络设置 = properties.networkSettings,
    防火墙规则 = properties.firewallRules;

// 关联数据库和服务器数据
resources
| where type == "microsoft.sql/servers/databases"
| extend serverName = split(id, "/")[8] // 从资源ID中解析出服务器名称
| join kind=inner sqlServers on serverName, resourceGroup
| project 
    数据库名称 = name,
    服务器名称 = serverName,
    资源组 = resourceGroup,
    网络设置,
    防火墙规则

筛选启用了Azure服务访问例外的服务器

如果要专门找出允许Azure内部服务访问的SQL Server,可以加过滤条件:

resources
| where type == "microsoft.sql/servers"
// 检查是否存在允许Azure服务的防火墙规则
| where array_length(properties.firewallRules) > 0
| mv-expand rules = properties.firewallRules
| where rules.name == "AllowAllWindowsAzureIps"
| project 
    服务器名称 = name,
    资源组 = resourceGroup,
    允许Azure服务访问 = true

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.22 20:02:38