Megosztás a következőn keresztül:


Az Azure Policy kivételi struktúrája

Az Azure Policy kivételi funkciója arra szolgál, hogy mentesítsen egy erőforráshierarchiát vagy egy egyéni erőforrást a kezdeményezések vagy definíciók kiértékelése alól. Azok az erőforrások, amelyek kivételt képeznek az általános megfelelőségbe, de nem értékelhetők ki, vagy ideiglenes lemondással rendelkeznek. További információ: Az Azure Policy alkalmazhatóságának ismertetése. Az Azure Policy-kivételek a következő Resource Manager-módokkal is működnek: Microsoft.Kubernetes.Data, Microsoft.KeyVault.Dataés Microsoft.Network.Data.

A szabályzatkivétel létrehozásához JavaScript Object Notation (JSON) formátumot kell használni. A szabályzatkivétel az alábbiakhoz kapcsolódó elemeket tartalmaz:

A szabályzatok kivétele gyermekobjektumként jön létre az erőforráshierarchiában, vagy a kivételt kapott egyéni erőforrás. A kivételeket nem lehet létrehozni az Erőforrás-szolgáltató mód összetevő szintjén. Ha eltávolítja a kivételezett szülőerőforrást, a kivétel is el lesz távolítva.

Az alábbi JSON például egy erőforrás lemondási kategóriájában lévő szabályzatmentességet mutat egy kezdeményezési hozzárendeléshez.resourceShouldBeCompliantInit Az erőforrás a kezdeményezésben szereplő szabályzatdefiníciók közül csak kettő, az customOrgPolicy egyéni szabályzatdefiníció ( policyDefinitionReferenceId: requiredTags) és az Engedélyezett helyek beépített szabályzatdefiníciója ( policyDefinitionReferenceId : allowedLocations):

{
  "id": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Authorization/policyExemptions/resourceIsNotApplicable",
  "apiVersion": "2020-07-01-preview",
  "name": "resourceIsNotApplicable",
  "type": "Microsoft.Authorization/policyExemptions",
  "properties": {
    "displayName": "This resource is scheduled for deletion",
    "description": "This resources is planned to be deleted by end of quarter and has been granted a waiver to the policy.",
    "metadata": {
      "requestedBy": "Storage team",
      "approvedBy": "IA",
      "approvedOn": "2020-07-26T08:02:32.0000000Z",
      "ticketRef": "4baf214c-8d54-4646-be3f-eb6ec7b9bc4f"
    },
    "policyAssignmentId": "/subscriptions/{mySubscriptionID}/providers/Microsoft.Authorization/policyAssignments/resourceShouldBeCompliantInit",
    "policyDefinitionReferenceId": [
      "requiredTags",
      "allowedLocations"
    ],
    "exemptionCategory": "waiver",
    "expiresOn": "2020-12-31T23:59:00.0000000Z",
    "assignmentScopeValidation": "Default"
  }
}

Megjelenített név és leírás

A szabályzat kivételét használja displayName és description azonosítja, és kontextust biztosít annak az adott erőforrással való használatához. displayNamelegfeljebb 128 karakter hosszúságú és legfeljebb 512description.

Metaadatok

A metadata tulajdonság lehetővé teszi a releváns információk tárolásához szükséges gyermektulajdonságok létrehozását. A példában a tulajdonságok requestedBy, approvedByés approvedOnticketRef az ügyfélértékeket tartalmazzák, amelyek információt nyújtanak arról, hogy ki kérte a mentességet, ki hagyta jóvá és mikor, valamint egy belső nyomkövetési jegyet a kéréshez. Ezek a metadata tulajdonságok példák, de nem kötelezőek, és metadata nem korlátozódnak ezekre a gyermektulajdonságokra.

Szabályzat-hozzárendelés azonosítója

Ennek a mezőnek egy szabályzat- vagy kezdeményezés-hozzárendelés teljes elérési útjának nevét kell tartalmaznia. Ez policyAssignmentId egy sztring, nem tömb. Ez a tulajdonság határozza meg, hogy melyik hozzárendelés alól mentesül a szülőerőforrás-hierarchia vagy az egyes erőforrás.

Szabályzatdefiníció azonosítói

Ha a policyAssignmentId tulajdonság egy kezdeményezési hozzárendeléshez tartozik, a policyDefinitionReferenceId tulajdonság használatával megadhatja, hogy a kezdeményezésben melyik szabályzatdefinícióra vonatkozik a tárgyerőforrás kivétele. Mivel az erőforrás mentesülhet egy vagy több belefoglalt szabályzatdefiníció alól, ez a tulajdonság tömb. Az értékeknek meg kell egyeznie a mezők kezdeményezési policyDefinitions.policyDefinitionReferenceId definíciójában szereplő értékekkel.

Kivételkategória

Két kivételkategória létezik, amelyek a kivételek csoportosítására szolgálnak:

  • Megoldott: A kivétel azért van engedélyezve, mert a szabályzat célja más módon teljesül.
  • Mentesség: A mentesség azért van megadva, mert az erőforrás meg nem felelésállapotát ideiglenesen elfogadják. A kategória használatának másik oka, hogy kizár egy erőforrást vagy erőforráshierarchiát egy vagy több definícióból egy kezdeményezésben, de nem zárható ki a teljes kezdeményezésből.

Lejárat

Ha azt szeretné beállítani, hogy egy erőforráshierarchia vagy egy adott erőforrás már nem mentesül-e a hozzárendelés alól, állítsa be a tulajdonságot expiresOn . Ennek az opcionális tulajdonságnak univerzális ISO 8601 DateTime formátumban yyyy-MM-ddTHH:mm:ss.fffffffZkell lennie.

Feljegyzés

A szabályzat kivételei nem törlődnek a expiresOn dátum elérésekor. Az objektum megmarad a nyilvántartáshoz, de a kivételt a továbbiakban nem tartják tiszteletben.

Erőforrás-választók

A kivételek olyan választható tulajdonságot resourceSelectors támogatnak, amely ugyanúgy működik a kivételekben, mint a hozzárendelésekben. A tulajdonság lehetővé teszi az erőforrások bizonyos részhalmazainak fokozatos bevezetését vagy visszaállítását az erőforrás típusa, az erőforrás helye vagy az erőforrás helye alapján szabályozott módon. Az erőforrás-választók használatáról a hozzárendelési struktúrában talál további részleteket. Az alábbi JSON egy példa kivétel, amely erőforrás-választókat használ. Ebben a példában csak a benne lévő westcentralus erőforrások mentesülnek a szabályzat-hozzárendelés alól:

{
  "properties": {
    "policyAssignmentId": "/subscriptions/{subId}/providers/Microsoft.Authorization/policyAssignments/CostManagement",
    "policyDefinitionReferenceId": [
      "limitSku",
      "limitType"
    ],
    "exemptionCategory": "Waiver",
    "resourceSelectors": [
      {
        "name": "TemporaryMitigation",
        "selectors": [
          {
            "kind": "resourceLocation",
            "in": [
              "westcentralus"
            ]
          }
        ]
      }
    ]
  },
  "systemData": { ...
  },
  "id": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Authorization/policyExemptions/DemoExpensiveVM",
  "type": "Microsoft.Authorization/policyExemptions",
  "name": "DemoExpensiveVM"
}

A példákban szereplő régiók hozzáadhatók vagy eltávolíthatók a resourceLocation listából. Az erőforrás-választók nagyobb rugalmasságot biztosítanak annak érdekében, hogy hol és hogyan hozhatók létre és kezelhetők a kivételek.

Hozzárendelés hatókörének érvényesítése (előzetes verzió)

A legtöbb esetben a kivétel hatóköre érvényesítve van, hogy a szabályzat-hozzárendelés hatókörében vagy alatt legyen. Az opcionális assignmentScopeValidation tulajdonság lehetővé teszi, hogy a kivétel megkerülje ezt az ellenőrzést, és a hozzárendelés hatókörén kívül hozható létre. Ez az ellenőrzés olyan helyzetekre vonatkozik, amikor az előfizetést át kell helyezni az egyik felügyeleti csoportból (MG) egy másikba, de az áthelyezést a szabályzat blokkolja az előfizetésen belüli erőforrások tulajdonságai miatt. Ebben a forgatókönyvben létrehozhat egy kivételt az előfizetéshez a jelenlegi MG-ben, amely mentesíti az erőforrásait a cél MG-n lévő szabályzat-hozzárendelés alól. Így, amikor az előfizetést áthelyezik a cél MG-be, a művelet nem lesz letiltva, mert az erőforrások már mentesülnek a szóban forgó szabályzat-hozzárendelés alól. A tulajdonság használata a következő példában látható:

{
  "properties": {
    "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/{mgName}/providers/Microsoft.Authorization/policyAssignments/CostManagement",
    "policyDefinitionReferenceId": [
      "limitSku",
      "limitType"
    ],
    "exemptionCategory": "Waiver",
    "assignmentScopeValidation": "DoNotValidate",
  },
  "systemData": { ...
  },
  "id": "/subscriptions/{subId}/providers/Microsoft.Authorization/policyExemptions/DemoExpensiveVM",
  "type": "Microsoft.Authorization/policyExemptions",
  "name": "DemoExpensiveVM"
}

A assignmentScopeValidation lehetséges értékei a Default és a DoNotValidate. Ha nincs megadva, az alapértelmezett érvényesítési folyamat következik be.

Szükséges engedélyek

A szabályzatmentességi objektumok kezeléséhez szükséges Azure-szerepköralapú hozzáférés-vezérlési (Azure RBAC-) engedélyek a Microsoft.Authorization/policyExemptions műveletcsoportban találhatók. A beépített szerepkörök erőforrásházirend-közreműködője.

A mentességek további biztonsági intézkedésekkel rendelkeznek a mentesség biztosításának hatása miatt. Az erőforráshierarchia vagy az egyéni erőforrás műveletének megkövetelésén Microsoft.Authorization/policyExemptions/write túl a kivétel létrehozójának rendelkeznie kell a exempt/Action célhozzárendelésre vonatkozó igével.

Kivétel létrehozása és kezelése

A kivételeket olyan időhöz kötött vagy konkrét forgatókönyvekhez javasoljuk, ahol egy erőforrást vagy erőforráshierarchiát továbbra is nyomon kell követni, és más módon is értékelni kell, de van egy konkrét oka annak, hogy nem kell a megfelelőséget értékelni. Ha például egy környezet rendelkezik a beépített definícióval Storage accounts should disable public network access (ID: b2982f36-99f2-4db5-8eff-283140c09693) a naplózásra beállított effektuskészlettel. A megfelelőség értékelésekor az erőforrás StorageAcc1 nem megfelelő, de StorageAcc1 üzleti célokra engedélyeznie kell a nyilvános hálózati hozzáférést. Ekkor el kell küldeni egy kérelmet egy olyan kivételi erőforrás létrehozásához, amely a célokat célozza StorageAcc1. A kivétel létrehozása StorageAcc1 után a megfelelőségi felülvizsgálat kivételként jelenik meg.

Rendszeresen tekintse át a mentességeket, hogy minden jogosult elem megfelelően legyen mentesítve, és haladéktalanul távolítsa el azokat, amelyek nem jogosultak a mentességre. Ekkor a lejárt kivételi erőforrások is törölhetők.

Következő lépések