Azure Policy minta: mezőtulajdonságok
A mezőoperátor egy adott feltétel megadott értékére értékeli ki a megadott tulajdonságot vagy aliast.
Mintaszabályzat-definíció
Ez a szabályzatdefiníció lehetővé teszi olyan engedélyezett régiók meghatározását, amelyek megfelelnek a szervezet földrajzi helyére vonatkozó követelményeknek. Az engedélyezett erőforrásokat a listOfAllowedLocations (tömb) paraméter határozza meg. A definíciónak megfelelő erőforrásokat a rendszer megtagadja.
{
"properties": {
"displayName": "Allowed locations",
"policyType": "BuiltIn",
"description": "This policy enables you to restrict the locations your organization can specify when deploying resources. Use to enforce your geo-compliance requirements. Excludes resource groups, Microsoft.AzureActiveDirectory/b2cDirectories, and resources that use the 'global' region.",
"mode": "Indexed",
"parameters": {
"listOfAllowedLocations": {
"type": "Array",
"metadata": {
"description": "The list of locations that can be specified when deploying resources.",
"strongType": "location",
"displayName": "Allowed locations"
}
}
},
"policyRule": {
"if": {
"allOf": [{
"field": "location",
"notIn": "[parameters('listOfAllowedLocations')]"
},
{
"field": "location",
"notEquals": "global"
},
{
"field": "type",
"notEquals": "Microsoft.AzureActiveDirectory/b2cDirectories"
}
]
},
"then": {
"effect": "Deny"
}
}
}
}
Magyarázat
"if": {
"allOf": [{
"field": "location",
"notIn": "[parameters('listOfAllowedLocations')]"
},
{
"field": "location",
"notEquals": "global"
},
{
"field": "type",
"notEquals": "Microsoft.AzureActiveDirectory/b2cDirectories"
}
]
},
"then": {
"effect": "Deny"
}
}
A mezőoperátort háromszor használja a rendszer az allOflogikai operátoron belül.
- Az első használat a notIn feltétellel kiértékeli a
location
tulajdonságot a listOfAllowedLocations paraméterre. A notIn úgy működik, ahogyan egy tömböt vár, és a paraméter egy tömb. Ha alocation
létrehozott vagy frissített erőforrás nem szerepel a jóváhagyott listában, ez az elem igaz értéket ad vissza. - A második használat szintén kiértékeli a
location
tulajdonságot, de a notEquals feltételt használja annak megtekintéséhez, hogy az erőforrás globális-e. Ha alocation
létrehozott vagy frissített erőforrás nem globális, ez az elem igaz értéket ad vissza. - Az utolsó használat kiértékeli a
type
tulajdonságot, és a notEquals feltételt használja annak ellenőrzéséhez, hogy az erőforrástípus nem Microsoft.AzureActiveDirectory/b2cDirectories-e. Ha nem, ez az elem igaz értéket ad vissza.
Ha az allOf logikai operátor mindhárom feltétel-utasítása igaz értéket ad, az erőforrás létrehozását vagy frissítését a Azure Policy blokkolja.
Következő lépések
- Tekintse át az egyéb mintákat és a beépített definíciókat.
- Tekintse meg az Azure szabályzatdefiníciók struktúrája szakaszt.
- A Szabályzatok hatásainak ismertetése.