Aracılığıyla paylaş


Azure İlkesi deseni: alan özellikleri

Alan işleci belirtilen özelliği veya diğer adı belirli bir koşul için sağlanan değer olarak değerlendirir.

Örnek ilke tanımı

Bu ilke tanımı, kuruluşunuzun coğrafi konum gereksinimlerini karşılayan izin verilen bölgeleri tanımlamanızı sağlar. İzin verilen kaynaklar listOfAllowedLocations (dizi) parametresinde tanımlanır. Tanımla eşleşen kaynaklar reddedilir.

{
    "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"
            }
        }
    }
}

Açıklama

    "if": {
        "allOf": [{
                "field": "location",
                "notIn": "[parameters('listOfAllowedLocations')]"
            },
            {
                "field": "location",
                "notEquals": "global"
            },
            {
                "field": "type",
                "notEquals": "Microsoft.AzureActiveDirectory/b2cDirectories"
            }
        ]
    },
    "then": {
        "effect": "Deny"
    }
}

alan işleci allOf mantıksal işleci içinde üç kez kullanılır.

  • İlk kullanım, listOfAllowedLocations parametresine notIn koşuluyla özelliğini değerlendirirlocation. notIn bir dizi beklediği gibi çalışır ve parametresi bir dizidir. location Oluşturulan veya güncelleştirilen kaynağın değeri onaylananlar listesinde değilse, bu öğe true olarak değerlendirilir.
  • İkinci kullanım özelliği de değerlendirirlocation, ancak kaynağın genel olup olmadığını görmek için notEquals koşulunu kullanır. location Oluşturulan veya güncelleştirilen kaynağın değeri genel değilse, bu öğe true olarak değerlendirilir.
  • Son kullanım özelliği değerlendirir type ve kaynak türünün Microsoft.AzureActiveDirectory/b2cDirectories olmadığını doğrulamak için notEquals koşulunu kullanır. Değilse, bu öğe true olarak değerlendirilir.

allOf mantıksal işlecindeki üç koşul deyimi de true değerini verirse, kaynak oluşturma veya güncelleştirme Azure İlkesi tarafından engellenir.

Sonraki adımlar