创建 Azure Policy 问题
Creating Azure Policy Issue
我正在尝试创建一个策略来审核我在 Azure 中的网络接口。
如果 NIC 在没有 NSG 的情况下分配了 public IP(在 NIC 上而不是在子网上),则该策略应该指向
这是我的 JSON。请协助解决这个问题。目前,这里的问题是所有 NIC with/without PIP 和 NSG 都不兼容。
{
"mode": "All",
"policyRule": {
"if": {
"allOf": [
{
"field": "type",
"equals": "Microsoft.Network/networkInterfaces"
},
{
"not": {
"field": "Microsoft.Network/networkInterfaces/networkSecurityGroup",
"equals": "True"
}
},
{
"not": {
"field": "Microsoft.Network/networkInterfaces/ipConfigurations[*].publicIPAddress",
"equals": "True"
}
}
]
},
"then": {
"effect": "audit"
}
},
"parameters": {}
}
我会尝试使用 exists
条件运算符。结果看起来像这样。
{
"mode": "All",
"policyRule": {
"if": {
"allOf": [
{
"field": "type",
"equals": "Microsoft.Network/networkInterfaces"
},
{
"not": {
"field": "Microsoft.Network/networkInterfaces/networkSecurityGroup",
"exists": true
}
},
{
"field": "Microsoft.Network/networkInterfaces/ipConfigurations[*].publicIPAddress",
"exists": true
}
]
},
"then": {
"effect": "audit"
}
},
"parameters": {}
}
将您的所有资源标记为不合规的原因是因为您正在检查的资源的 publiIpAddress 或 NSG 都不等于“True”。有关更多策略条件运算符,请查看 https://docs.microsoft.com/en-us/azure/governance/policy/concepts/definition-structure#conditions
我正在尝试创建一个策略来审核我在 Azure 中的网络接口。 如果 NIC 在没有 NSG 的情况下分配了 public IP(在 NIC 上而不是在子网上),则该策略应该指向 这是我的 JSON。请协助解决这个问题。目前,这里的问题是所有 NIC with/without PIP 和 NSG 都不兼容。
{
"mode": "All",
"policyRule": {
"if": {
"allOf": [
{
"field": "type",
"equals": "Microsoft.Network/networkInterfaces"
},
{
"not": {
"field": "Microsoft.Network/networkInterfaces/networkSecurityGroup",
"equals": "True"
}
},
{
"not": {
"field": "Microsoft.Network/networkInterfaces/ipConfigurations[*].publicIPAddress",
"equals": "True"
}
}
]
},
"then": {
"effect": "audit"
}
},
"parameters": {}
}
我会尝试使用 exists
条件运算符。结果看起来像这样。
{
"mode": "All",
"policyRule": {
"if": {
"allOf": [
{
"field": "type",
"equals": "Microsoft.Network/networkInterfaces"
},
{
"not": {
"field": "Microsoft.Network/networkInterfaces/networkSecurityGroup",
"exists": true
}
},
{
"field": "Microsoft.Network/networkInterfaces/ipConfigurations[*].publicIPAddress",
"exists": true
}
]
},
"then": {
"effect": "audit"
}
},
"parameters": {}
}
将您的所有资源标记为不合规的原因是因为您正在检查的资源的 publiIpAddress 或 NSG 都不等于“True”。有关更多策略条件运算符,请查看 https://docs.microsoft.com/en-us/azure/governance/policy/concepts/definition-structure#conditions