Condividi tramite


Gestire i log dei flussi del gruppo di sicurezza di rete usando un modello di Azure Resource Manager

Importante

Il 30 settembre 2027 i log dei flussi del gruppo di sicurezza di rete (NSG) verranno ritirati. Come parte di questo ritiro, non sarà più possibile creare nuovi log dei flussi del gruppo di sicurezza di rete a partire dal 30 giugno 2025. È consigliabile la migrazione ai log dei flussi della rete virtuale, che superano le limitazioni dei log dei flussi del gruppo di sicurezza di rete. Dopo la data di ritiro, l'analisi del traffico abilitata con i log dei flussi del gruppo di sicurezza di rete non sarà più supportata e le risorse dei log dei flussi del gruppo di sicurezza di rete esistenti nelle sottoscrizioni verranno eliminate. Tuttavia, i record dei log dei flussi del gruppo di sicurezza di rete non verranno eliminati e continueranno a seguire i rispettivi criteri di conservazione. Per altre informazioni, consultare l'annuncio ufficiale.

La registrazione dei flussi dei gruppi di sicurezza di rete è una funzionalità di Azure Network Watcher che consente di registrare informazioni sul traffico IP che scorre attraverso un gruppo di sicurezza di rete. Per altre informazioni sui log dei flussi dei gruppi di sicurezza di rete, vedere Panoramica dei log dei flussi NSG.

Questo articolo illustra come gestire i log dei flussi del gruppo di sicurezza di rete a livello di codice usando un modello di Azure Resource Manager e Azure PowerShell. È possibile imparare a gestire un log dei flussi NSG usando il portale di Azure, PowerShell, l'interfaccia della riga di comando di Azure o l’API REST.

Un modello di Azure Resource Manager è un file JSON (JavaScript Object Notation) che definisce l'infrastruttura e la configurazione del progetto usando una sintassi dichiarativa.

Prerequisiti

Oggetto log del flusso del gruppo di sicurezza di rete

L'oggetto dei log dei flussi del gruppo di sicurezza di rete con tutti i parametri è illustrato nell'esempio seguente. Per una panoramica completa delle proprietà dell'oggetto, vedere Informazioni di riferimento sul modello dei log dei flussi del gruppo di sicurezza di rete.

{
  "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"
         }
      }
    }
  }

Per creare una risorsa Microsoft.Network/networkWatchers/flowLogs, aggiungere il codice JSON precedente alla sezione resources del modello.

Creare il modello

Per altre informazioni sull'uso dei modelli di Azure Resource Manager, vedere:

Gli esempi seguenti presentano modelli completi per abilitare i log dei flussi del gruppo di sicurezza di rete.

Esempio 1

Nell'esempio 1 viene usata la versione più semplice del modello di Resource Manager con il passaggio di parametri minimi. Il modello seguente abilita i log dei flussi del gruppo di sicurezza di rete in un gruppo di sicurezza di rete di destinazione e li archivia in un determinato account di archiviazione.

{
  "$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": {}
    }

  }
  ]
}

Nota

  • targetResourceId è l'ID risorsa del gruppo di sicurezza di rete di destinazione.
  • storageId è l'ID risorsa per l'account di archiviazione di destinazione.

Esempio 2

L'esempio 2 usa il modello seguente per abilitare i log dei flussi del gruppo di sicurezza di rete (versione 2) con conservazione di 5 giorni e analisi del traffico in un intervallo di elaborazione di 10 minuti.

{
  "$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
        }
      }
    }
  ]
}

Nota

  • targetResourceId è l'ID risorsa del gruppo di sicurezza di rete di destinazione.
  • storageId è l'ID risorsa per l'account di archiviazione di destinazione.
  • workspaceResourceId è l'ID risorsa dell'area di lavoro analisi del traffico.

Distribuire il modello di Azure Resource Manager

Questa esercitazione presuppone che siano presenti un gruppo di risorse e un gruppo di sicurezza di rete in cui abilitare la funzionalità di registrazione del flusso. È possibile salvare in locale i modelli di esempio precedenti come azuredeploy.json. Aggiornare i valori delle proprietà in modo che puntino a risorse valide nella sottoscrizione.

Per distribuire il modello, eseguire il comando seguente in PowerShell.

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

Nota

I comandi precedenti distribuiscono una risorsa nel gruppo di risorse NetworkWatcherRG e non nel gruppo di risorse contenente il gruppo di sicurezza di rete.

Verificare la distribuzione

Esistono due modi per verificare se la distribuzione ha avuto esito positivo. Nella console di PowerShell è necessario che per "ProvisioningState" sia visualizzato il valore "Succeeded". Inoltre, è possibile visitare la pagina del portale relativa ai log dei flussi per confermare le modifiche apportate. Se si sono verificati problemi durante la distribuzione, vedere Risolvere errori comuni durante la distribuzione di Azure con Azure Resource Manager.

Eliminare la risorsa

Azure consente l'eliminazione di risorse tramite la modalità di distribuzione Completa. Per eliminare una risorsa dei log dei flussi, specificare una distribuzione in modalità Completa senza includere la risorsa che si vuole eliminare. Per altre informazioni, vedere Modalità di distribuzione completa.

Passaggi successivi