Azure Policy-minta: mezőtulajdonságok
A mező operátor a megadott tulajdonságot vagy aliast egy adott feltétel megadott értékére értékeli ki.
Minta szabályzatdefiníció
Ez a szabályzatdefiníció lehetővé teszi, hogy olyan engedélyezett régiókat határozzon meg, amelyek megfelelnek a szervezet földrajzi hely követelményeinek. Az engedélyezett erőforrásokat a paraméterlistaOfAllowedLocations (tömb) 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 logikai operátorallOf függvénye.
- 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, ahogy 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, az elem értéke igaz. - 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 ki. - Az utolsó használat kiértékeli a
type
tulajdonságot, és a notEquals feltétel használatával ellenőrzi, hogy az erőforrástípus nem Microsoft.AzureActiveDirectory/b2cDirectories-e. Ha nem, akkor 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 Azure Policy letiltja az erőforrás létrehozását vagy frissítését.
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.