Azure Policy vzor: operátor count
Operátor count vyhodnocuje členy aliasu [*].
Ukázková definice zásady
Tato definice zásady audituje skupiny zabezpečení sítě nakonfigurované tak, aby povolovaly příchozí provoz protokolu RDP (Remote Desktop Protocol).
{
"properties": {
"mode": "all",
"displayName": "Audit Network Security Groups for RDP",
"description": "This policy audits NSGs with RDP ports enabled",
"policyRule": {
"if": {
"allOf": [{
"field": "type",
"equals": "Microsoft.Network/networkSecurityGroups"
},
{
"count": {
"field": "Microsoft.Network/networkSecurityGroups/securityRules[*]",
"where": {
"allOf": [{
"field": "Microsoft.Network/networkSecurityGroups/securityRules[*].direction",
"equals": "Inbound"
},
{
"field": "Microsoft.Network/networkSecurityGroups/securityRules[*].access",
"equals": "Allow"
},
{
"field": "Microsoft.Network/networkSecurityGroups/securityRules[*].destinationPortRange",
"equals": "3389"
}
]
}
},
"greater": 0
}
]
},
"then": {
"effect": "audit"
}
}
}
}
Vysvětlení
Základní komponenty operátoru count jsou pole, kde a podmínka. Každý z nich je zvýrazněný v následujícím fragmentu kódu.
- field řekne count, který alias má členy vyhodnotit. Tady se podíváme na pole aliasů securityRules[*] skupiny zabezpečení sítě.
- , kde pomocí jazyka zásad definuje, které členy pole splňují kritéria. V tomto příkladu logický operátor allOf seskupuje tři různé podmínky vyhodnocení vlastností pole aliasů: direction, access a destinationPortRange.
- Podmínka počtu v tomto příkladu je vyšší. Funkce Count se vyhodnotí jako true, pokud jeden nebo více členů pole aliasů odpovídá klauzuli where .
{
"count": {
"field": "Microsoft.Network/networkSecurityGroups/securityRules[*]",
"where": {
"allOf": [{
"field": "Microsoft.Network/networkSecurityGroups/securityRules[*].direction",
"equals": "Inbound"
},
{
"field": "Microsoft.Network/networkSecurityGroups/securityRules[*].access",
"equals": "Allow"
},
{
"field": "Microsoft.Network/networkSecurityGroups/securityRules[*].destinationPortRange",
"equals": "3389"
}
]
}
},
"greater": 0
}
Další kroky
- Projděte si další vzory a předdefinované definice.
- Projděte si strukturu definic Azure Policy.
- Projděte si Vysvětlení efektů zásad.