Share via


Azure İlkesi tanımları denetim etkisi

Etkisi audit , uyumlu olmayan bir kaynak değerlendirilirken etkinlik günlüğünde bir uyarı olayı oluşturmak için kullanılır, ancak isteği durdurmaz.

Denetim değerlendirmesi

Denetim, kaynağın oluşturulması veya güncelleştirildiği sırada Azure İlkesi tarafından denetlenen son etkidir. Resource Manager modu için Azure İlkesi kaynağı Kaynak Sağlayıcısı'na gönderir. Bir kaynak için oluşturma veya güncelleştirme isteğini değerlendirirken Azure İlkesi etkinlik günlüğüne bir Microsoft.Authorization/policies/audit/action işlem ekler ve kaynağı uyumsuz olarak işaretler. Standart uyumluluk değerlendirme döngüsü sırasında yalnızca kaynakta uyumluluk durumu güncelleştirilir.

Denetim özellikleri

Resource Manager modunda, denetim etkisi ilke tanımının then koşulunda kullanılacak başka bir özelliğe sahip değildir.

bir Kaynak Sağlayıcısı modu Microsoft.Kubernetes.Dataiçin, denetim etkisi aşağıdaki alt özelliklerine detailssahiptir. templateInfo kullanımı, kullanım dışı olduğu gibi constraintTemplate yeni veya güncelleştirilmiş ilke tanımları için gereklidir.

  • templateInfo (gerekli)

    • ile constraintTemplatekullanılamaz.
    • sourceType (gerekli)
      • Kısıtlama şablonu için kaynak türünü tanımlar. İzin verilen değerler: PublicURL veya Base64Encoded.

      • ise PublicURL, kısıtlama şablonunun konumunu sağlamak için özelliğiyle url eşleştirilir. Konum genel olarak erişilebilir olmalıdır.

        Uyarı

        SAS URI'lerini, URL belirteçlerini veya gizli dizileri düz metin olarak kullanıma sunan başka bir şey kullanmayın.

      • ise Base64Encoded, temel 64 kodlanmış kısıtlama şablonunu sağlamak için özelliğiyle content eşleştirilir. Mevcut bir Açık İlke Aracısı (OPA) Ağ Geçidi Denetleyicisi v3 kısıtlama şablonundan özel bir tanım oluşturmak için bkz. Kısıtlama şablonundan ilke tanımı oluşturma.

  • constraint (kullanım dışı)

    • ile templateInfokullanılamaz.
    • Kısıtlama şablonunun CRD uygulaması. aracılığıyla values{{ .Values.<valuename> }}geçirilen parametreleri kullanır. Aşağıdaki 2. örnekte bu değerler ve {{ .Values.allowedContainerImagesRegex }}değerleridir{{ .Values.excludedNamespaces }}.
  • constraintTemplate (kullanım dışı)

    • ile templateInfokullanılamaz.
    • İlke tanımı oluşturulurken veya güncelleştirilirken ile templateInfo değiştirilmelidir.
    • Yeni Kısıtlamaları tanımlayan CustomResourceDefinition (CRD) Kısıtlama şablonu. Şablon, Azure İlkesi üzerinden values geçirilen Rego mantığını, Kısıtlama şemasını ve Kısıtlama parametrelerini tanımlar. Daha fazla bilgi için Ağ Geçidi Denetleyicisi kısıtlamaları'na gidin.
  • constraintInfo (isteğe bağlı)

    • , , constraintTemplate, , apiGroups, kinds, scope, namespacesexcludedNamespacesveya labelSelectorile constraintkullanılamaz.
    • Sağlanamazsa constraintInfo , kısıtlama ve ilkesinden templateInfo oluşturulabilir.
    • sourceType (gerekli)
      • Kısıtlama için kaynak türünü tanımlar. İzin verilen değerler: PublicURL veya Base64Encoded.

      • ise PublicURL, kısıtlamanın konumunu sağlamak için özelliğiyle url eşleştirilir. Konum genel olarak erişilebilir olmalıdır.

        Uyarı

        SAS URI'lerini veya belirteçlerini url gizli diziyi açığa çıkarabilecek başka bir yerde kullanmayın.

  • namespaces (isteğe bağlı)

  • excludedNamespaces (isteğe bağlı)

  • labelSelector (isteğe bağlı)

    • Sağlanan etiketler ve seçicilerle eşleşen ilke değerlendirmesi için hangi Kubernetes kaynaklarının dahilleneceğini belirtmek için matchLabels (nesne) ve matchExpression (dizi) özelliklerini içeren bir nesne.
    • Boş veya eksik bir değer, ilke değerlendirmesinin excludedNamespaces içinde tanımlanan ad alanları dışında tüm etiketleri ve seçicileri içermesine neden olur.
  • scope (isteğe bağlı)

    • Küme kapsamlı veya ad alanı kapsamlı kaynakların eşleşip eşleşmediğini belirtmek için kapsam özelliğini içeren bir dize.
  • apiGroups(templateInfo kullanılırken gereklidir)

    • Eşleşecek API gruplarını içeren bir dizi. Boş bir dizi ([""]), çekirdek API grubudur.
    • apiGroups için tanımlamaya ["*"] izin verilmiyor.
  • kinds(templateInfo kullanılırken gereklidir)

  • values (isteğe bağlı)

    • Kısıtlamaya geçirecek parametreleri ve değerleri tanımlar. Her değerin mevcut olması ve Kısıtlama şablonu CRD'sinin doğrulama openAPIV3Schema bölümündeki bir özellikle eşleşmesi gerekir.

Denetim örneği

Örnek 1: Resource Manager modları için denetim efektini kullanma.

"then": {
  "effect": "audit"
}

Örnek 2: bir Kaynak Sağlayıcısı modu için denetim efektini Microsoft.Kubernetes.Datakullanma. içindeki details.templateInfo ek bilgiler kullanımı PublicURL bildirir ve izin verilen kapsayıcı görüntülerini sınırlamak için Kubernetes'te kullanılacak Kısıtlama şablonunun konumuna ayarlar url .

"then": {
  "effect": "audit",
  "details": {
    "templateInfo": {
      "sourceType": "PublicURL",
      "url": "https://store.policy.core.windows.net/kubernetes/container-allowed-images/v1/template.yaml",
    },
    "values": {
      "imageRegex": "[parameters('allowedContainerImagesRegex')]"
    },
    "apiGroups": [
      ""
    ],
    "kinds": [
      "Pod"
    ]
  }
}

Sonraki adımlar