NSG-stroomlogboeken beheren met behulp van een Azure Resource Manager-sjabloon

Logboekregistratie van netwerkbeveiligingsgroepen is een functie van Azure Network Watcher waarmee u informatie kunt vastleggen over IP-verkeer dat via een netwerkbeveiligingsgroep stroomt. Zie het overzicht van NSG-stroomlogboeken voor meer informatie over logboekregistratie van netwerkbeveiligingsgroepen.

In dit artikel leert u hoe u NSG-stroomlogboeken programmatisch beheert met behulp van een Azure Resource Manager-sjabloon en Azure PowerShell. U kunt leren hoe u een NSG-stroomlogboek beheert met behulp van Azure Portal, PowerShell, Azure CLI of REST API.

Een Azure Resource Manager-sjabloon is een JSON-bestand (JavaScript Object Notation) dat de infrastructuur en configuratie voor uw project definieert met behulp van declaratieve syntaxis.

Vereisten

Object NSG-stroomlogboeken

Het NSG-stroomlogboekobject met alle parameters wordt weergegeven in het volgende voorbeeld. Zie de sjabloonverwijzing voor NSG-stroomlogboeken voor een volledig overzicht van de objecteigenschappen.

{
  "name": "string",
  "type": "Microsoft.Network/networkWatchers/flowLogs",
  "location": "string",
  "apiVersion": "2022-07-01",
  "properties": {
    "targetResourceId": "string",
    "storageId": "string",
    "enabled": "boolean",
    "flowAnalyticsConfiguration": {
      "networkWatcherFlowAnalyticsConfiguration": {
         "enabled": "boolean",
         "workspaceResourceId": "string",
          "trafficAnalyticsInterval": "integer"
        },
        "retentionPolicy": {
           "days": "integer",
           "enabled": "boolean"
         },
        "format": {
           "type": "string",
           "version": "integer"
         }
      }
    }
  }

Om een Microsoft.Network/networkWatchers/flowLogs-resource te maken, voegt u de bovenstaande JSON toe aan de sectie Resources van uw sjabloon.

Uw sjabloon maken

Zie voor meer informatie over het gebruik van Azure Resource Manager-sjablonen:

De volgende voorbeelden bevatten volledige sjablonen om NSG-stroomlogboeken in te schakelen.

Voorbeeld 1

Voorbeeld 1 maakt gebruik van de eenvoudigste versie van de ARM-sjabloon met minimale parameters die zijn doorgegeven. Met de volgende sjabloon worden NSG-stroomlogboeken in een doelnetwerkbeveiligingsgroep ingeschakeld en opgeslagen in een bepaald opslagaccount.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "apiProfile": "2019-09-01",
  "resources": [
 {
    "name": "myNSG-myresourcegroup-flowlog",
    "type": "Microsoft.Network/networkWatchers/FlowLogs/",
    "location": "eastus",
    "apiVersion": "2022-11-01",
    "properties": {
      "targetResourceId": "/subscriptions/abcdef01-2345-6789-0abc-def012345678/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkSecurityGroups/myNSG",
      "storageId": "/subscriptions/abcdef01-2345-6789-0abc-def012345678/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount",
      "enabled": true,
      "flowAnalyticsConfiguration": {},
      "retentionPolicy": {},
      "format": {}
    }

  }
  ]
}

Notitie

  • targetResourceId is de resource-id van de doelnetwerkbeveiligingsgroep.
  • storageId is de resource-id van het doelopslagaccount.

Voorbeeld 2

In voorbeeld 2 wordt de volgende sjabloon gebruikt om NSG-stroomlogboeken (versie 2) met retentie van 5 dagen en verkeersanalyse met een verwerkingsinterval van 10 minuten in te schakelen.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "apiProfile": "2019-09-01",
  "resources": [
    {
      "name": "myNSG-myresourcegroup-flowlog",
      "type": "Microsoft.Network/networkWatchers/FlowLogs/",
      "location": "eastus",
      "apiVersion": "2022-11-01",
      "properties": {
        "targetResourceId": "/subscriptions/abcdef01-2345-6789-0abc-def012345678/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkSecurityGroups/myNSG",
        "storageId": "/subscriptions/abcdef01-2345-6789-0abc-def012345678/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount",
        "enabled": true,
        "flowAnalyticsConfiguration": {
          "networkWatcherFlowAnalyticsConfiguration": {
            "enabled": true,
            "workspaceResourceId": "/subscriptions/abcdef01-2345-6789-0abc-def012345678/resourceGroups/defaultresourcegroup-eus/providers/Microsoft.OperationalInsights/workspaces/DefaultWorkspace-abcdef01-2345-6789-0abc-def012345678-EUS",
            "trafficAnalyticsInterval": 10
          }
        },
        "retentionPolicy": {
          "days": 5,
          "enabled": true
        },
        "format": {
          "type": "JSON",
          "version": 2
        }
      }
    }
  ]
}

Notitie

  • targetResourceId is de resource-id van de doelnetwerkbeveiligingsgroep.
  • storageId is de resource-id van het doelopslagaccount.
  • workspaceResourceId is de resource-id van de traffic analytics-werkruimte.

Uw Azure Resource Manager-sjabloon implementeren

In deze zelfstudie wordt ervan uitgegaan dat u een bestaande resourcegroep en een netwerkbeveiligingsgroep hebt waarop u stroomlogboekregistratie kunt inschakelen. U kunt elk van de bovenstaande voorbeeldsjablonen lokaal opslaan als azuredeploy.json. Werk de eigenschapswaarden bij zodat ze naar geldige resources in uw abonnement wijzen.

Voer de volgende opdracht in PowerShell uit om de sjabloon te implementeren.

$context = Get-AzSubscription -SubscriptionId <SubscriptionId>
Set-AzContext $context
New-AzResourceGroupDeployment -Name EnableFlowLog -ResourceGroupName NetworkWatcherRG `
    -TemplateFile "C:\MyTemplates\azuredeploy.json"

Notitie

Met de vorige opdrachten wordt een resource geïmplementeerd in de NetworkWatcherRG-resourcegroep en niet in de resourcegroep die de netwerkbeveiligingsgroep bevat.

Uw implementatie controleren

Er zijn een aantal manieren om te controleren of uw implementatie is geslaagd. Uw PowerShell-console zou ‘Geslaagd’ moeten weergegeven bij ‘ProvisioningState’. Daarnaast kunt u de portalpagina voor stroomlogboeken bezoeken om uw wijzigingen te bevestigen. Als er problemen zijn met de implementatie, raadpleegt u Veelvoorkomende fouten in Azure-implementaties met Azure Resource Manager oplossen.

Uw resource verwijderen

Azure maakt het verwijderen van resources mogelijk via de implementatiemodus Voltooid . Als u een stroomlogboekresource wilt verwijderen, geeft u een implementatie op in de volledige modus zonder de resource op te geven die u wilt verwijderen. Zie De implementatiemodus voltooien voor meer informatie.

Volgende stappen