Az Azure Blueprints erőforrás-zárolásának ismertetése

Fontos

2026. július 11-én a Tervek (előzetes verzió) elavult. Migrálja a meglévő tervdefiníciókat és -hozzárendeléseket sablonspecifikációkba és üzembehelyezési vermekbe. A tervösszetevőket ARM JSON-sablonokká vagy Bicep-fájlokká kell konvertálni, amelyek az üzembehelyezési vermek meghatározására szolgálnak. Ha meg szeretné tudni, hogyan hozhat létre összetevőt ARM-erőforrásként, tekintse meg az alábbiakat:

A konzisztens környezetek nagy léptékű létrehozása csak akkor igazán értékes, ha létezik egy olyan mechanizmus, amely fenntartja ezt a konzisztenciát. Ez a cikk bemutatja, hogyan működik az erőforrás-zárolás az Azure Blueprintsben. Az erőforrás-zárolásra és a megtagadási hozzárendelések alkalmazására vonatkozó példát az Új erőforrások védelme oktatóanyagban tekintheti meg.

Megjegyzés

Az Azure Blueprints által üzembe helyezett erőforrás-zárolások csak a terv-hozzárendelés által üzembe helyezett nem bővítmény típusú erőforrásokra lesznek alkalmazva. A meglévő erőforrások, például a már létező erőforráscsoportokban lévő erőforrások nem rendelkeznek zárolással.

Zárolási módok és állapotok

A zárolási mód a tervhozzárendelésre vonatkozik, és három lehetőség közül választhat: Ne zárolja, csak olvasható vagy Ne törölje. A zárolási mód az összetevő üzembe helyezése során van konfigurálva a tervhozzárendelés során. A tervhozzárendelés frissítésével más zárolási mód is beállítható. A zárolási módok azonban nem módosíthatók az Azure Blueprintsen kívül.

A tervhozzárendelés összetevői által létrehozott erőforrások négy állapottal rendelkeznek: Nincs zárolva, Írásvédett, Nem szerkeszthető/Törölhető vagy Nem törölhető. Minden összetevőtípus lehet Nincs zárolva állapotban. Az erőforrás állapotának meghatározásához az alábbi táblázat használható:

Mód Összetevő erőforrástípusa Állam Leírás
Nincs zárolás * Nincs zárolva Az erőforrásokat nem védik az Azure Blueprints. Ez az állapot az írásvédett vagy a nem törölhető erőforráscsoport-összetevőhöz hozzáadott erőforrásokhoz is használatos tervhozzárendelésen kívülről.
Csak olvasási engedély Erőforráscsoport Nem szerkeszthető/törölhető Az erőforráscsoport írásvédett, és az erőforráscsoport címkéi nem módosíthatók. A Nem zárolt erőforrások hozzáadhatók, áthelyezhetők, módosíthatók vagy törölhetők ebből az erőforráscsoportból.
Csak olvasási engedély Nem erőforráscsoport Csak olvasási engedély Az erőforrás semmilyen módon nem módosítható. Nincsenek módosítások, és nem törölhetők.
Ne töröljön * Nem törölhető Az erőforrások módosíthatók, de nem törölhetők. A Nem zárolt erőforrások hozzáadhatók, áthelyezhetők, módosíthatók vagy törölhetők ebből az erőforráscsoportból.

Zárolási állapotok felülírása

Általában lehetséges, hogy az előfizetésen megfelelő Azure szerepköralapú hozzáférés-vezérléssel (Azure RBAC) rendelkező személy , például a "Tulajdonos" szerepkörrel rendelkező személy módosíthat vagy törölhet bármilyen erőforrást. Ez a hozzáférés nem igaz, ha az Azure Blueprints egy üzembe helyezett hozzárendelés részeként alkalmazza a zárolást. Ha a hozzárendelés az Írásvédett vagy a Nem törölhető beállítással lett beállítva, még az előfizetés tulajdonosa sem tudja végrehajtani a letiltott műveletet a védett erőforráson.

Ez a biztonsági intézkedés védi a definiált terv és a környezet konzisztenciáját, amelyet véletlen vagy programozott törlésből vagy módosításból való létrehozásra terveztek.

Hozzárendelés a felügyeleti csoportban

Az egyetlen lehetőség, amely megakadályozza, hogy az előfizetés-tulajdonosok eltávolítsanak egy tervhozzárendelést, a terv hozzárendelése egy felügyeleti csoporthoz. Ebben a forgatókönyvben csak a felügyeleti csoport tulajdonosai rendelkeznek a tervhozzárendelés eltávolításához szükséges engedélyekkel.

Ha a tervet nem előfizetéshez, hanem felügyeleti csoporthoz szeretné hozzárendelni, a REST API-hívás a következőképpen módosul:

PUT https://management.azure.com/providers/Microsoft.Management/managementGroups/{assignmentMG}/providers/Microsoft.Blueprint/blueprintAssignments/{assignmentName}?api-version=2018-11-01-preview

A által definiált {assignmentMG} felügyeleti csoportnak vagy a felügyeleti csoport hierarchiájában kell lennie, vagy ugyanabban a felügyeleti csoportban kell lennie, amelyben a tervdefiníciót menti.

A tervhozzárendelés kérelemtörzse a következőképpen néz ki:

{
    "identity": {
        "type": "SystemAssigned"
    },
    "location": "eastus",
    "properties": {
        "description": "enforce pre-defined simpleBlueprint to this XXXXXXXX subscription.",
        "blueprintId": "/providers/Microsoft.Management/managementGroups/{blueprintMG}/providers/Microsoft.Blueprint/blueprints/simpleBlueprint",
        "scope": "/subscriptions/{targetSubscriptionId}",
        "parameters": {
            "storageAccountType": {
                "value": "Standard_LRS"
            },
            "costCenter": {
                "value": "Contoso/Online/Shopping/Production"
            },
            "owners": {
                "value": [
                    "johnDoe@contoso.com",
                    "johnsteam@contoso.com"
                ]
            }
        },
        "resourceGroups": {
            "storageRG": {
                "name": "defaultRG",
                "location": "eastus"
            }
        }
    }
}

A kérelem törzsében és egy előfizetéshez hozzárendelt fő különbség a properties.scope tulajdonság. Ezt a szükséges tulajdonságot arra az előfizetésre kell beállítani, amelyre a tervhozzárendelés vonatkozik. Az előfizetésnek a felügyeleticsoport-hierarchia közvetlen gyermekének kell lennie, ahol a tervhozzárendelést tárolja.

Megjegyzés

A felügyeleti csoport hatóköréhez rendelt tervek továbbra is előfizetésszintű tervhozzárendelésként működnek. Az egyetlen különbség az, hogy a tervhozzárendelés tárolása megakadályozza, hogy az előfizetés-tulajdonosok eltávolítják a hozzárendelést és a kapcsolódó zárolásokat.

Zárolási állapotok eltávolítása

Ha szükség lesz egy hozzárendelés által védett erőforrás módosítására vagy törlésére, kétféleképpen teheti meg.

  • A tervhozzárendelés frissítése a Nem zárolt állapotú zárolási módra
  • Tervhozzárendelés törlése

A hozzárendelés eltávolításakor az Azure Blueprints által létrehozott zárolások törlődnek. Az erőforrás azonban hátra van hagyva, és normál módon kell törölni.

A tervzárolások működése

Az Azure RBAC megtagadási hozzárendelések megtagadási művelete a terv hozzárendelése során az összetevő-erőforrásokra lesz alkalmazva, ha a hozzárendelés az Írásvédett vagy a Törlés tiltása beállítást választotta. A megtagadási műveletet a tervhozzárendelés felügyelt identitása adhatja hozzá, és csak ugyanazzal a felügyelt identitással távolítható el az összetevő-erőforrásokból. Ez a biztonsági intézkedés kényszeríti a zárolási mechanizmust, és megakadályozza a tervzár eltávolítását az Azure Blueprintsen kívül.

Képernyőkép egy erőforráscsoport Hozzáférés-vezérlés (I A M) oldaláról és a Hozzárendelések megtagadása lapról.

Az egyes módok megtagadási hozzárendelési tulajdonságai a következők:

Mód Permissions.Actions Permissions.NotActions Tagok[i]. Típus ExcludePrincipals[i]. Id DoNotApplyToChildScopes
Csak olvasási engedély * */read
Microsoft.Authorization/locks/delete
Microsoft.Network/virtualNetwork/subnets/join/action
SystemDefined (Mindenki) tervhozzárendelés és felhasználó által definiált a excludedPrincipalsban Erőforráscsoport – igaz; Erőforrás – hamis
Ne töröljön */Töröl Microsoft.Authorization/locks/delete
Microsoft.Network/virtualNetwork/subnets/join/action
SystemDefined (Mindenki) tervhozzárendelés és felhasználó által definiált a excludedPrincipalsban Erőforráscsoport – igaz; Erőforrás – hamis

Fontos

Az Azure Resource Manager legfeljebb 30 percig gyorsítótárazza a szerepkör-hozzárendelés részleteit. Ennek eredményeképpen előfordulhat, hogy a terverőforrások megtagadási hozzárendelési műveletei nem lesznek azonnal teljes körűen érvényben. Ebben az időszakban lehetséges lehet törölni egy tervzárolással védeni kívánt erőforrást.

Tag kizárása megtagadási hozzárendelésből

Egyes tervezési vagy biztonsági forgatókönyvekben előfordulhat, hogy ki kell zárni egy tagot a terv-hozzárendelés által létrehozott megtagadási hozzárendelésből . Ez a lépés a REST API-ban történik, ha a hozzárendelés létrehozásakor legfeljebb öt értéket ad hozzá a locks tulajdonság kizártPrincipals tömbjéhez. A következő hozzárendelés-definíció egy példa egy kérelemtörzsre, amely tartalmazza a kizártPrincipal-elemeket:

{
  "identity": {
    "type": "SystemAssigned"
  },
  "location": "eastus",
  "properties": {
    "description": "enforce pre-defined simpleBlueprint to this XXXXXXXX subscription.",
    "blueprintId": "/providers/Microsoft.Management/managementGroups/{mgId}/providers/Microsoft.Blueprint/blueprints/simpleBlueprint",
    "locks": {
        "mode": "AllResourcesDoNotDelete",
        "excludedPrincipals": [
            "7be2f100-3af5-4c15-bcb7-27ee43784a1f",
            "38833b56-194d-420b-90ce-cff578296714"
        ]
    },
    "parameters": {
      "storageAccountType": {
        "value": "Standard_LRS"
      },
      "costCenter": {
        "value": "Contoso/Online/Shopping/Production"
      },
      "owners": {
        "value": [
          "johnDoe@contoso.com",
          "johnsteam@contoso.com"
        ]
      }
    },
    "resourceGroups": {
      "storageRG": {
        "name": "defaultRG",
        "location": "eastus"
      }
    }
  }
}

Művelet kizárása megtagadási hozzárendelésből

A terv-hozzárendelésekben a megtagadási hozzárendelésektagjára vonatkozó kizáráshoz hasonlóan bizonyos Azure-erőforrás-szolgáltatói műveleteket is kizárhat. A properties.locks blokkon belül, ugyanazon a helyen, ahol a kizártPrincipals található, hozzáadható egy kizártActions elem:

"locks": {
    "mode": "AllResourcesDoNotDelete",
    "excludedPrincipals": [
        "7be2f100-3af5-4c15-bcb7-27ee43784a1f",
        "38833b56-194d-420b-90ce-cff578296714"
    ],
    "excludedActions": [
        "Microsoft.ContainerRegistry/registries/push/write",
        "Microsoft.Authorization/*/read"
    ]
},

Bár a kizártPrincipal-elemeknek explicitnek kell lenniük, a excludedActions bejegyzések használhatók * az erőforrás-szolgáltatói műveletek helyettesítő karakteres egyeztetéséhez.

Következő lépések