我正在尝试使用Azure策略的资源图查询事件中心防火墙IP规则。我目前已使用以下防火墙IP规则配置了事件中心。
{
"type": "Microsoft.EventHub/namespaces/ipfilterrules",
"apiVersion": "2018-01-01-preview",
"name": "[concat(parameters('namespaces_myeventhub_name'), '/e51110a0-c074-43b3-85b7-b43e2eab4d9b')]",
"location": "West US 2",
"dependsOn": [
"[resourceId('Microsoft.EventHub/namespaces', parameters('namespaces_myeventhub_name'))]"
],
"properties": {
"ipMask": "47.xxx.xxx.xxx",
"action": "Accept",
"filterName": "e51110a0-c074-43b3-85b7-b43e2eax4d9b"
}
}
查询
"where type =~ 'Microsoft.EventHub/namespaces'"
将显示我的事件中心,而没有有关防火墙IP规则的任何信息。还有一个
查询where type =~ 'Microsoft.EventHub/namespaces/ipfilterrules'
不返回任何内容。我希望能够使用资源图查询此信息,并最终针对这些属性编写Azure策略。我已经使用以下
搜索了与此信息相关的别名"where type =~ 'Microsoft.EventHub/namespaces' | limit 1 | project aliases"
,但返回的列表不包含事件中心的防火墙IP规则信息。这似乎是应该在“资源图”中提供的基本信息...我缺少什么?
答案 0 :(得分:1)
不幸的是,在测试之后,只能通过Azure资源图API查询事件中心命名空间的级别,并且不能直接通过Azure资源图查询ipfilterrules, 请参考以下解决方案作为解决方法:
1:在可疑状态下查询所有事件中心名称空间 例如: https://management.azure.com/subscriptions/ / providers / Microsoft.EventHub / namespaces?api-version = 2018-01-01-preview
2:查询事件中心名称空间下的所有ipfilterrules,并在程序中一一过滤ipfilterrules。 例如 https://management.azure.com/subscriptions/ / resourceGroups / ericm / providers / Microsoft.EventHub / namespaces // ipfilterrules?api-version = 2018-01-01-preview
希望这对您有所帮助。