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


Dinamikus hálózati csoporttagság definiálása az Azure Virtual Network Managerben az Azure Policy használatával

Ebből a cikkből megtudhatja, hogyan hozhat létre dinamikus tagsággal rendelkező hálózati csoportokat az Azure Policy feltételes utasításaival. Ezeket a feltételes utasításokat az alapszintű szerkesztővel hozhatja létre úgy, hogy kiválasztja a paramétereket és az operátorokat egy legördülő menüből. Azt is megtudhatja, hogyan frissítheti egy meglévő hálózati csoport feltételes utasításait a speciális szerkesztő használatával.

Az Azure Policy egy olyan szolgáltatás, amely lehetővé teszi az erőforrásonkénti szabályozás nagy léptékű kikényszerítését. Olyan feltételes kifejezések megadására használható, amelyek csoporttagságokat határoznak meg, szemben a virtuális hálózatok explicit listáival. Ez a feltétel továbbra is dinamikusan alakítja a hálózati csoportokat, így a virtuális hálózatok automatikusan csatlakozhatnak a csoporthoz, és automatikusan elhagyhatják a csoportot, miközben a feltétel teljesülése megváltozik, és nincs szükség Network Manager-műveletre.

Előfeltételek

  • Egy Azure-fiók, aktív előfizetéssel. Fiók ingyenes létrehozása.
  • A dinamikus hálózati csoportok módosításához szerepköralapú hozzáférés-vezérléssel kell hozzáférést biztosítani. A klasszikus rendszergazdai/örökölt engedélyezés nem támogatott.

Paraméterek és operátorok

A dinamikus tagsággal rendelkező virtuális hálózatok feltételes utasítások használatával vannak kiválasztva. Több feltételes utasítást is meghatározhat olyan logikai operátorok használatával, mint az AND és az OR olyan forgatókönyvek esetében, ahol tovább kell szűkítenie a kiválasztott virtuális hálózatokat.

Támogatott paraméterek listája:

Paraméterek Speciális szerkesztőmező
Név Name
Azonosító Id
Címkék tag['tagName']
Előfizetés neve [subscription().Name]
Előfizetés azonosítója [subscription().Id]
Előfizetési címkék [subscription().tags['tagName']]
Erőforráscsoport neve [resourceGroup().Name]
Erőforráscsoport azonosítója [resourceGroup().Id]
Erőforráscsoport címkéi [resourceGroup().tags['tagName']]

Támogatott operátorok listája:

Operátorok Speciális szerkesztő
Tartalmaz "contains": <>
Nem tartalmaz "notcontains": <>
In "in": <>
Nincs beadva "notin": <>
Egyenlő "equals": <>
Nem egyenlő "notequals": <>
Bármelyiket tartalmazza "contains": <>
Az összes "contains": <>
Nem tartalmaz egyiket sem "notcontains": <>
Létezik "exists": true
Nem létezik "exists": false

Feljegyzés

A Létező és a Nem létezik operátor csak a Címkék paraméterrel használható.

Alapszintű szerkesztő

Tegyük fel, hogy az előfizetésében a következő virtuális hálózatok találhatók. Minden virtuális hálózat rendelkezik egy társított címkével ellátott környezettel, amely a megfelelő éles vagy tesztelési értékkel rendelkezik.

Virtual Network Címke neve Címke értéke
myVNet01-EastUS környezet termelés
myVNet01-WestUS környezet termelés
myVNet02-WestUS környezet teszt
myVNet03-WestUS környezet teszt

Csak olyan virtuális hálózatokat szeretne kiválasztani, amelyeknek a címkéje az éles környezetnek megfelelő kulcsértékpárokkal rendelkezik. A feltételes utasítás létrehozásához először létre kell hoznia egy új hálózati csoportot az alapszintű szerkesztővel.

  1. Nyissa meg az Azure Virtual Network Manager-példányt, és válassza a Hálózati csoportok lehetőséget a Beállítások területen. Ezután válassza a + Létrehozás lehetőséget egy új hálózati csoport létrehozásához.

  2. Adjon meg egy nevet és egy opcionális leírást a hálózati csoporthoz, és válassza a Hozzáadás lehetőséget.

  3. Válassza ki a hálózati csoportot a listából, és válassza az Azure Policy létrehozása lehetőséget.

  4. Adjon meg egy házirendnevet , és hagyja meg a hatókör-kijelöléseket , hacsak nincs szükség módosításokra.

  5. A Feltételek területen válassza a Paraméterek legördülő menü Címkék elemét, majd az Operátor legördülő listából válassza a Kulcs értékpár lehetőséget.

  6. Adja meg a környezetet és az éles környezetet a Feltétel területen, és válassza az Előzetes verziójú erőforrások lehetőséget. A listában megjelenik a myVNet01-EastUS és a myVNet01-WestUS.

    Képernyőkép az Azure Policy létrehozása ablakbeállítási címkéről kulcsérték párral.

  7. Válassza a Bezárás és mentés lehetőséget.

  8. Néhány perc elteltével válassza ki a hálózati csoportot, és válassza a Csoporttagok lehetőséget a Beállítások területen. Csak a myVNet01-WestUS és a myVNet01-WestUS jelenik meg.

Fontos

Az alapszintű szerkesztő csak az Azure Policy létrehozásakor érhető el. Miután létrehozta a szabályzatot, az összes módosítás a virtuális hálózatkezelő Szabályzatok szakaszában található JSON használatával vagy az Azure Policy használatával lesz végrehajtva.

Speciális szerkesztő

A speciális szerkesztővel virtuális hálózatokat választhat ki egy hálózati csoport létrehozásakor vagy meglévő hálózati csoport frissítésekor. A JSON-alapú speciális szerkesztő hasznos az összetett Azure Policy feltételes utasítások tapasztalt felhasználók általi létrehozásához és frissítéséhez.

Új szabályzat létrehozása speciális szerkesztővel

  1. Nyissa meg az Azure Virtual Network Manager-példányt, és válassza a Hálózati csoportok lehetőséget a Beállítások területen. Ezután válassza a + Létrehozás lehetőséget egy új hálózati csoport létrehozásához.

  2. Adjon meg egy nevet és egy opcionális leírást a hálózati csoporthoz, és válassza a Hozzáadás lehetőséget.

  3. Válassza ki a hálózati csoportot a listából, és válassza az Azure Policy létrehozása lehetőséget.

  4. Adjon meg egy házirendnevet , és hagyja meg a hatókör-kijelöléseket , hacsak nincs szükség módosításokra.

  5. A Feltételek csoportban válassza a Speciális (JSON) szerkesztőt a szerkesztő megnyitásához.

  6. Írja be a következő JSON-kódot a szövegmezőbe, és válassza a Mentés lehetőséget:

       {
       "field": "Name",
       "contains": "myVNet01"
       }
    
  7. Néhány perc elteltével válassza ki a hálózati csoportot, és válassza a Csoporttagok lehetőséget a Beállítások területen. Csak a myVNet01-WestUS és a myVNet01-EastUS jelenik meg.

Fontos

A virtuális hálózatkezelővel létrehozott Azure-szabályzatok az Azure Policy szolgáltatási területén fognak élni. A virtuális hálózatkezelő-példány törlésekor ezek nem lesznek eltávolítva az Azure Policy-hozzárendelésekből és -definíciókból. Ehhez manuálisan kell eltávolítani a szabályzatokat. Útmutató az Azure-szabályzatok eltávolításához

Meglévő szabályzat szerkesztése

  1. Válassza ki az előző szakaszban létrehozott hálózati csoportot. Ezután válassza a Szabályzatok lapot.

  2. Válassza ki az előző szakaszban létrehozott szabályzatot.

  3. A hálózati csoport feltételes utasításait az előzetes szerkesztő nézetben az alábbiak szerint láthatja:

    [
      {
         "field": "Name",
         "contains": "myVNet01"
      }
    ]
    
  4. Ha egy másik feltételes utasítást szeretne hozzáadni a WestUS-t nem tartalmazóNév mezőhöz, írja be a következőt a speciális szerkesztőbe:

    {
       "allOf": [
    
          {
             "field": "Name",
             "contains": "VNet01"
          },
          {
             "field": "Name",
             "notcontains": "WestUS"
          }
       ]
    }
    

    A "allOf" paraméter tartalmazza az AND logikai operátor által elválasztott feltételes utasításokat.

  5. Válassza a Mentés lehetőséget.

  6. Néhány perc elteltével válassza ki a hálózati csoportot, és válassza a Csoporttagok lehetőséget a Beállítások területen. Csak a myVNet01-EastUS-t kell látnia.

A speciális szerkesztővel használható paraméterek és operátorok teljes listájáért tekintse meg a Paraméter és operátorok című témakört.

További példák

A speciális szerkesztőben további példákat talál a feltételes utasításokra.

1. példa: CSAK OR operátor

Ez a példa az OR logikai operátort használja két feltételes utasítás elválasztásához.

  • Alapszintű szerkesztő:

    Képernyőkép a hálózati csoport feltételes utasításáról az OR logikai operátor használatával.

  • Speciális operátor:

    {
       "anyOf": [
          {
             "field": "Name",
             "contains": "myVNet01"
          },
          {
             "field": "Name",
             "contains": "myVNet02"
          }
       ]
    }
    

A "anyOf" paraméter tartalmazza az OR logikai operátor által elválasztott feltételes utasításokat.

2. példa: AND és OR operátor egyidejűleg

  • Alapszintű szerkesztő:

    Képernyőkép a hálózati csoport feltételes utasításáról az OR és az AND logikai operátor használatával.

  • Speciális szerkesztő:

{
   "allOf": [
      {
         "anyOf": [
            {
               "field": "Name",
               "contains": "myVNet01"
            },
            {
               "field": "Name",
               "contains": "myVNet02"
            }
         ]
      },
      {
         "field": "Name",
         "notcontains": "West"
      }
   ]
}

Mindkettőt "allOf" , és "anyOf" a kódban használják. Mivel az AND operátor utolsó a listában, a kód külső részén található, amely a két feltételes utasítást tartalmazza az OR operátorral.

3. példa: Egyéni címkeértékek használata speciális szerkesztővel

Ebben a példában létrejön egy feltételes utasítás, amely megkeresi azokat a virtuális hálózatokat, ahol a név tartalmazza a myVNetet, és a környezeti címke egyenlő az éles környezettel.

  • Speciális szerkesztő:

    
       {
            "allOf": [
              {
                 "field": "Name",
                 "contains": "myVNet"
              },      
              {
                 "field": "tags['environment']",
                 "equals": "production"
              }
            ]    
       }
    
    

    Feljegyzés

    A hatékonyság növelése érdekében a feltételes feltételeknek a Microsoft.Network/virtualNetwork erőforrástípusra kell szűrnie. Ezt a feltételt előre fel van függesztetve a portálon megadott feltételes feltételekre.

Következő lépések