Azure İlkesi tanımları denyAction etkisi
Bu denyAction
etki, uygun ölçekteki kaynaklara yönelik hedeflenen eyleme dayalı istekleri engellemek için kullanılır. Bugün desteklenen tek eylem: DELETE
. Bu etki ve eylem adı, kritik kaynakların yanlışlıkla silinmesini önlemeye yardımcı olur.
DenyAction değerlendirmesi
Geçerli bir eylem adına ve hedeflenen kapsama sahip bir istek çağrısı gönderildiğinde, denyAction
isteğin başarılı olmasını engeller. İstek olarak 403 (Forbidden)
döndürülür. portalda, Forbidden
ilke ataması tarafından engellenen bir dağıtım durumu olarak görüntülenebilir.
Microsoft.Authorization/policyAssignments
, Microsoft.Authorization/denyAssignments
, Microsoft.Blueprint/blueprintAssignments
, Microsoft.Resources/deploymentStacks
, , Microsoft.Resources/subscriptions
ve Microsoft.Authorization/locks
tüm kilitleme senaryolarını önlemek için zorlamadan denyAction
muaftır.
Abonelik silme
İlke, abonelik silme sırasında gerçekleşen kaynakların kaldırılmasını engellemez.
Kaynak grubu silme
İlke, bir kaynak grubu silme işlemi sırasında konum ve etiketleri destekleyen kaynakları ilkelere göre denyAction
değerlendirir. Yalnızca ilke kuralında olarak ayarlanmış deny
ilkeler cascadeBehaviors
kaynak grubu silme işlemini engeller. İlke, konumu ve etiketleri desteklemeyen kaynakların kaldırılmasını veya ile mode:all
herhangi bir ilkenin kaldırılmasını engellemez.
Art arda silme
Üst kaynağın silinmesi tüm alt ve uzantı kaynaklarını örtük olarak silerken art arda silme gerçekleşir. Silme eylemi üst kaynakları hedeflediğinde, ilke alt ve uzantı kaynaklarının kaldırılmasını engellemez. Örneğin, Microsoft.Insights/diagnosticSettings
uzantısının kaynağıdır Microsoft.Storage/storageaccounts
. İlke denyAction
hedefleniyorsa Microsoft.Insights/diagnosticSettings
, tanılama ayarına (alt) yönelik silme çağrısı başarısız olur, ancak depolama hesabına (üst) yapılan silme işlemi tanılama ayarını (uzantı) örtük olarak siler.
Bu tabloda, atanan denyAction
ilke ve çağrının hedeflenen kapsamı için geçerli olan kaynak göz önüne alındığında bir kaynağın DELETE
silinmeye karşı korunup korunmadığı açıklanır. Bu tablo bağlamında, dizine alınan kaynak etiketleri ve konumları destekleyen kaynaktır ve dizine alınamayan bir kaynak da etiketleri veya konumları desteklemeyen kaynaktır. Dizine alınan ve dizine alınamayan kaynaklar hakkında daha fazla bilgi için tanım moduna gidin. Alt kaynaklar, yalnızca başka bir kaynak bağlamında bulunan kaynaklardır. Örneğin, bir sanal makine uzantısı kaynağı, üst kaynak olan sanal makinenin alt öğesidir.
Varlık siliniyor | İlke koşullarına uygulanabilir varlık | Eylem gerçekleştirilen |
---|---|---|
Kaynak | Kaynak | Korumalı |
Abonelik | Kaynak | Silindi |
Kaynak grubu | Dizine alınan kaynak | Bağlı cascadeBehaviors |
Kaynak grubu | Dizine alınan kaynak değil | Silindi |
Alt kaynak | Üst kaynak | Üst öğe korumalıdır; alt öğe silindi |
Üst kaynak | Alt kaynak | Silindi |
DenyAction özellikleri
details
Efektin denyAction
özelliği, eylemi ve davranışları tanımlayan tüm alt özelliklere sahiptir.
actionNames
(gerekli)- Yürütülmesini engelleyecek eylemleri belirten bir dizi.
- Desteklenen eylem adları şunlardır:
delete
.
cascadeBehaviors
(isteğe bağlı)- Kaynak grubu kaldırıldığında bir kaynak örtük olarak silindiğinde hangi davranışın izlendiğini tanımlayan nesne.
- Yalnızca modu olarak ayarlanmış
indexed
ilke tanımlarında desteklenir. - İzin verilen değerler veya
deny
şeklindedirallow
. - Varsayılan değer
deny
olarak belirlenmiştir.
DenyAction örneği
Örnek: Prod değerine eşit bir etiket ortamına sahip olan veritabanı hesaplarını hedefleyen silme çağrılarını reddedin. Art arda davranış reddetme olarak ayarlandığından, geçerli bir veritabanı hesabına sahip bir kaynak grubunu hedefleyen çağrıları DELETE
engelleyin.
{
"if": {
"allOf": [
{
"field": "type",
"equals": "Microsoft.DocumentDb/accounts"
},
{
"field": "tags.environment",
"equals": "prod"
}
]
},
"then": {
"effect": "denyAction",
"details": {
"actionNames": [
"delete"
],
"cascadeBehaviors": {
"resourceGroup": "deny"
}
}
}
}
Sonraki adımlar
- örnekleri Azure İlkesi gözden geçirin.
- Azure İlkesi tanımı yapısını gözden geçirin.
- Program aracılığıyla ilkelerin nasıl oluşturulacağını anlama.
- Uyumluluk verilerini almayı öğrenin.
- Uyumlu olmayan kaynakları düzeltmeyi öğrenin.
- Azure yönetim gruplarını gözden geçirin.