Azure İlkesi kanıtlama yapısı

Kanıtlamalar, el ile ilkeler tarafından hedeflenen kaynakların veya kapsamların uyumluluk durumlarını ayarlamak için Azure İlkesi tarafından kullanılır. Ayrıca, kullanıcıların kanıtlanan uyumluluk durumuna eşlik eden ek meta veriler veya kanıtlara bağlantı sağlamasına da olanak tanır.

Not

Kanıtlamalar yalnızca Azure İlkesi Azure Resource Manager (ARM) API'si, PowerShell veya Azure CLI aracılığıyla oluşturulabilir ve yönetilebilir.

En iyi yöntemler

Kanıtlamalar, belirli bir el ile ilke için tek bir kaynağın uyumluluk durumunu ayarlamak için kullanılabilir. Bu, geçerli her kaynağın el ile ilke ataması başına bir kanıtlama gerektirdiği anlamına gelir. Yönetim kolaylığı için, uyumluluk durumunun kanıtlanması gereken kaynakların sınırını tanımlayan kapsamı hedef alan el ile ilkeler tasarlanmalıdır.

Örneğin, bir kuruluşun ekipleri kaynak grubuna böldüğünü ve her ekibin bu kaynak grubu içindeki kaynakları işleme yordamlarının geliştirilmesini doğrulaması gerektiğini varsayalım. Bu senaryoda, ilke kuralının koşulları bu türe eşit Microsoft.Resources/resourceGroupsolmalıdır. Bu şekilde, içindeki her bir kaynak yerine kaynak grubu için bir kanıtlama gerekir. Benzer şekilde, kuruluş ekipleri aboneliklere bölüyorsa ilke kuralının hedeflemesi Microsoft.Resources/subscriptionsgerekir.

Genellikle, sağlanan kanıtlar kuruluş yapısının ilgili kapsamlarına karşılık gelir. Bu düzen, birçok kanıtlamada kanıtı yineleme gereksinimini önler. Bu tür yinelemeler, el ile ilkelerin yönetilmesini zor hale getirir ve ilke tanımının yanlış kaynakları hedeflediğini gösterir.

Örnek kanıtlama

Aşağıda, el ile ilke ataması tarafından hedeflenen bir kaynak grubunun uyumluluk durumunu ayarlayan yeni bir kanıtlama kaynağı oluşturma örneği verilmiştir:

PUT http://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.PolicyInsights/attestations/{name}?api-version=2019-10-01

İstek gövdesi

Aşağıda örnek bir kanıtlama kaynağı JSON nesnesi verilmiştir:

"properties": {
    "policyAssignmentId": "/subscriptions/{subscriptionID}/providers/microsoft.authorization/policyassignments/{assignmentID}",
    "policyDefinitionReferenceId": "{definitionReferenceID}",
    "complianceState": "Compliant",
    "expiresOn": "2023-07-14T00:00:00Z",
    "owner": "{AADObjectID}",
    "comments": "This subscription has passed a security audit. See attached details for evidence",
    "evidence": [
        {
          "description": "The results of the security audit.",
          "sourceUri": "https://gist.github.com/contoso/9573e238762c60166c090ae16b814011"
        },
        {
          "description": "Description of the attached evidence document.",
          "sourceUri": "https://storagesamples.blob.core.windows.net/sample-container/contingency_evidence_adendum.docx"
        },
    ],
    "assessmentDate": "2022-11-14T00:00:00Z",
    "metadata": {
         "departmentId": "{departmentID}"
     }
}
Özellik Açıklama
policyAssignmentId Durumunun ayarlandığı gerekli atama kimliği.
policyDefinitionReferenceId İlke girişimindeyse isteğe bağlı tanım başvuru kimliği.
complianceState Kaynakların istenen durumu. İzin verilen değerler , NonCompliantve UnknowndeğerleridirCompliant.
expiresOn Uyumluluk durumunun test edilen uyumluluk durumundan varsayılan duruma geri döndürülmesi gereken isteğe bağlı tarih
owner sorumlu tarafın isteğe bağlı Azure AD nesne kimliği.
comments Durumun neden ayarlandığının isteğe bağlı açıklaması.
evidence Kanıtlama kanıtına yönelik isteğe bağlı bağlantı dizisi.
assessmentDate Kanıtın değerlendirildiği tarih.
metadata Kanıtlama hakkında isteğe bağlı ek bilgiler.

Kanıtlamalar ilke atamalarından ayrı bir kaynak olduğundan, kendi yaşam döngüleri vardır. ARM API'sini kullanarak PUT, GET ve DELETE kanıtlamalarını kullanabilirsiniz. İlgili el ile ilke ataması veya policyDefinitionReferenceId silinirse veya kanıtlamaya özgü bir kaynak silinirse kanıtlamalar kaldırılır. Diğer ayrıntılar için bkz. İlke REST API Başvurusu .

Sonraki adımlar