Netwerkgroepen configureren met Azure Policy in Azure Virtual Network Manager

In dit artikel leert u hoe Azure Policy wordt gebruikt in Azure Virtual Network Manager om lidmaatschap van netwerkgroepen voorwaardelijk te definiëren. Door Azure Policy te gebruiken om je netwerkgroeplidmaatschap te definiëren, kun je automatische configuratie-implementatie naar je netwerkbronnen mogelijk maken, waardoor je schaalbare en dynamische virtuele netwerkomgevingen voor je organisatie kunt creëren.

Overzicht van Azure-beleid

Azure Policy evalueert middelen in Azure door de eigenschappen van die resources te vergelijken met de gewenste bedrijfsregels. Deze bedrijfsregels, zoals beschreven in de JSON-indeling, worden beleidsdefinities genoemd. Zodra je je bedrijfsregels hebt gemaakt, wordt de beleidsdefinitie toegewezen aan elk potentieel van resources dat Azure ondersteunt, zoals managementgroepen, abonnementen, resourcegroepen of individuele resources. De toewijzing van het beleid geldt voor alle resources binnen het Resource Manager-bereik van die toewijzing. Meer informatie over bereikgebruik met Scope in Azure Policy.

Definitie van netwerkgroepsbeleid

Het maken en implementeren van een beleid in Azure Policy begint met het maken van een beleidsdefinitieresource. Elke beleidsdefinitie bevat voorwaarden voor handhaving en een gedefinieerd effect dat optreedt als aan de voorwaarden wordt voldaan.

Bij de netwerkgroepen van Azure Virtual Network Manager bevat je beleidsdefinitie je conditionele uitdrukking voor het matchen van virtuele netwerken die aan je criteria voldoen, en specificeert het de netwerkgroep waar de virtuele netwerken bij aansluiten. Het addToNetworkGroup effect wordt gebruikt om resources in de doelnetwerkgroep te plaatsen. Hier volgt een voorbeeld van een beleidsregeldefinitie met het addToNetworkGroup effect. Voor alle aangepaste beleidsregels wordt de eigenschap mode ingesteld op Microsoft.Network.Data om de resourceprovider voor netwerkgroepen als doel te hebben, en dit is vereist voor het maken van een beleidsdefinitie voor Azure Virtual Network Manager.

Notitie

Azure Policy ondersteunt momenteel alleen de definitie van netwerkgroepslidmaatschap voor virtuele netwerken. Azure Policy-gebaseerd dynamisch netwerkgroeplidmaatschap geldt momenteel ook niet voor virtuele netwerken met meerdere huurders. Je kunt die virtuele netwerken alleen handmatig toevoegen. Voor meer informatie, zie bekende beperkingen.

"mode": "Microsoft.Network.Data",
"policyRule": {
      "if": {
        "allOf": [
          {
            "field": "Name",
            "contains": "-gen"
          }
        ]
      },
      "then": {
        "effect": "addToNetworkGroup",
        "details": {
          "networkGroupId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myResourceGroup2/providers/Microsoft.Network/networkManagers/myAVNM/networkGroups/myNG"
        }
      }
}

Belangrijk

Wanneer je een beleid definieert, moet de networkGroupId volledige resource ID van de doelnetwerkgroep zijn, zoals te zien is in de voorbeelddefinitie. Het ondersteunt geen parameterisatie in de beleidsdefinitie. Als u de netwerkgroep wilt parameteriseren, kunt u een Azure Resource Manager-sjabloon gebruiken om de beleidsdefinitie en toewijzing te maken.

Wanneer je Azure Policy gebruikt met Azure Virtual Network Manager, richt het beleid zich op een Resource Provider-eigenschap van Microsoft.Network.Data. Vanwege dit gedrag moet de beleidsdefinitie een policyType van Customhebben. Hoe je die waarde instelt hangt af van waar je de definitie maakt:

  • Vanuit het Azure Virtual Network Manager-dashboard: wanneer je een beleid maakt om leden dynamisch toe te voegen, stelt Azure Virtual Network Manager policyType voor je in op Custom wanneer het beleid wordt aangemaakt. Je hoeft het niet zelf in te stellen.
  • Met Azure Policy of andere hulpprogramma's: wanneer u een beleidsdefinitie maakt buiten het Azure Virtual Network Manager-dashboard, stelt u policyType zelf in op Custom in de definitie.

Hier volgt een voorbeeld van een beleidsdefinitie waarop de policyType eigenschap is ingesteld op Custom.


"properties": {
      "displayName": "myProdAVNM",
      "policyType": "Custom",
      "mode": "Microsoft.Network.Data",
      "metadata": {
        "category": "Azure Virtual Network Manager",
        "createdBy": "-----------------------------",
        "createdOn": "2023-04-10T15:35:35.9308987Z",
        "updatedBy": null,
        "updatedOn": null
      }
}

Meer informatie over de structuur van beleidsdefinities.

Een beleidstoewijzing maken

Net als bij Virtual Network Manager-configuraties worden beleidsdefinities niet onmiddellijk van kracht wanneer u ze maakt. Om te beginnen met toepassen, moet u een beleidstoewijzing maken die een definitie toewijst om binnen een bepaald bereik te evalueren. Op dit moment worden alle resources binnen het bereik geëvalueerd op basis van de definitie, waardoor één herbruikbare definitie kan worden toegewezen op meerdere locaties voor gedetailleerder beheer van groepslidmaatschappen. Meer informatie over de toewijzingsstructuur voor Azure Policy.

Beleidsdefinities en -toewijzingen kunnen worden gemaakt via Azure Virtual Network Manager of Azure Policy.

Vereiste machtigingen

Als u netwerkgroepen wilt gebruiken met Azure Policy, hebben gebruikers de volgende machtigingen nodig:

  • Microsoft.Authorization/policyassignments/Write en Microsoft.Authorization/policydefinitions/Write zijn nodig voor het bereik dat u toewijst.
  • Microsoft.Network/networkManagers/networkGroups/join/action is vereist voor de doelnetwerkgroep. Met deze machtiging kunnen resources van leden aan de doelnetwerkgroep worden toegevoegd en eruit worden verwijderd.
  • Bij het gebruik van set-definities om meerdere beleidsregels tegelijk toe te wijzen, zijn gelijktijdige Microsoft.Network/networkManagers/networkGroups/join/action permissies vereist op alle definies die gelijktijdig worden toegewezen.

Als u de benodigde machtigingen wilt instellen, kunnen gebruikers ingebouwde rollen toewijzen met op rollen gebaseerd toegangsbeheer:

  • De rol Netwerkbijdrager voor de doelnetwerkgroep.
  • Inzender voor resourcebeleid-rol op het niveau van het doelbereik.

Voor gedetailleerdere roltoewijzing kunt u aangepaste rollen maken met behulp van de Microsoft.Network/networkManagers/networkGroups/join/action machtiging en policy/write machtiging.

Belangrijk

Om Azure Virtual Network Manager netwerkgroepen met Azure Policy aan te passen, moet je alleen toegang krijgen via Azure Role-Based Access Control (RBAC) roltoewijzing. Klassieke beheerder of verouderde autorisatie wordt niet ondersteund. Dit betekent dat als je account alleen de rol van co-beheerder is toegewezen, je geen rechten hebt op de netwerkgroepen.

Naast de vereiste machtigingen moeten uw abonnementen en beheergroepen worden geregistreerd bij de volgende resourceproviders:

  • Microsoft.Network is vereist om virtuele netwerken te maken.
  • Microsoft.PolicyInsights is vereist voor het gebruik van Azure Policy.

Gebruik Register-AzResourceProvider in Azure PowerShell of az provider register in Azure CLI om de benodigde providers te registreren.

Handige tips

Filteren op type

Bij het configureren van uw beleidsdefinities wordt u aangeraden een typevoorwaarde op te nemen om deze te beperken tot virtuele netwerken. Deze voorwaarde stelt een polis in staat om niet-virtuele netwerkoperaties eruit te filteren en de efficiëntie van uw beleidsmiddelen te verbeteren.

Regionale indeling

Beleidsmiddelen zijn globaal, wat betekent dat elke wijziging in de beleidsdefinitie van kracht wordt op alle middelen binnen de toewijzingsscope, ongeacht de regio. Als je segmentering per regio of geleidelijke uitrol wilt, raden we aan een where location in []-voorwaarde op te nemen. Je kunt vervolgens de locatielijst stapsgewijs uitbreiden om geleidelijk het lidmaatschap van netwerkgroepen en de daaropvolgende configuratie-implementatie uit te rollen.

Afbakening van de opdracht

Als je best practices volgt met Azure management groups, heb je je middelen misschien al georganiseerd in een hiërarchische structuur. Met beleidstoewijzingen kun je dezelfde beleidsdefinitie toewijzen aan meerdere verschillende scopes binnen je hiërarchie, waardoor je een hogere controle hebt over welke bronnen geschikt zijn voor je netwerkgroep.

Een Azure Policy-definitie verwijderen die is gekoppeld aan een netwerkgroep

Je kunt situaties hebben waarin je geen Azure Policy-definitie meer nodig hebt. Scenario's zijn onder andere wanneer een netwerkgroep die aan een beleid is gekoppeld wordt verwijderd of je een ongebruikt beleid hebt dat je niet meer nodig hebt. Om het beleid te verwijderen, moet je het beleidsassociatieobject verwijderen en vervolgens de beleidsdefinitie in Azure Policy verwijderen. Zodra verwijdering is voltooid, kan de definitienaam niet langer worden herrefererd bij het koppelen van een nieuwe definitie aan een netwerkgroep.

Volgende stappen