次の方法で共有


クイックスタート: Bicep ファイルを使って NSG フロー ログを構成する

重要

2027 年 9 月 30 日に、ネットワーク セキュリティ グループ (NSG) フロー ログは廃止されます。 この提供終了の一環として、2025 年 6 月 30 日以降新しい NSG フロー ログを作成できなくなります。 NSG フロー ログの制限を克服するために、仮想ネットワーク フロー ログ移行することをお勧めします。 提供終了日を過ぎると、NSG フロー ログで有効になっているトラフィック分析はサポートされなくなり、サブスクリプション内の既存の NSG フロー ログ リソースが削除されます。 ただし、NSG フロー ログ のレコードは削除されないため、それぞれの保持ポリシーに従い続けます。 詳細については、公式告知を参照してください。

このクイックスタートでは、Bicep ファイルを使用して NSG フロー ログを有効にする方法について説明します。 詳細については、「 NSG フロー ログの概要 」および 「Azure Resource Manager とは」を参照してください。

Bicep は、宣言型の構文を使用して Azure リソースをデプロイするドメイン固有言語 (DSL) です。 簡潔な構文、信頼性の高いタイプ セーフ、およびコードの再利用のサポートが提供されます。 Bicep により、Azure のコード ソリューションとしてのインフラストラクチャに最適な作成エクスペリエンスが実現します。

[前提条件]

Bicep ファイルを確認する

このクイック スタートでは、Azure クイック スタート テンプレートNSG フロー ログ Bicep ファイルを作成します。

@description('Name of the Network Watcher attached to your subscription. Format: NetworkWatcher_<region_name>')
param networkWatcherName string = 'NetworkWatcher_${location}'

@description('Name of your Flow log resource')
param flowLogName string = 'FlowLog1'

@description('Region where you resources are located')
param location string = resourceGroup().location

@description('Resource ID of the target NSG')
param existingNSG string

@description('Retention period in days. Default is zero which stands for permanent retention. Can be any Integer from 0 to 365')
@minValue(0)
@maxValue(365)
param retentionDays int = 0

@description('FlowLogs Version. Correct values are 1 or 2 (default)')
@allowed([
  1
  2
])
param flowLogsVersion int = 2

@description('Storage Account type')
@allowed([
  'Standard_LRS'
  'Standard_GRS'
  'Standard_ZRS'
])
param storageAccountType string = 'Standard_LRS'

var storageAccountName = 'flowlogs${uniqueString(resourceGroup().id)}'

resource storageAccount 'Microsoft.Storage/storageAccounts@2021-09-01' = {
  name: storageAccountName
  location: location
  sku: {
    name: storageAccountType
  }
  kind: 'StorageV2'
  properties: {}
}

resource networkWatcher 'Microsoft.Network/networkWatchers@2022-01-01' = {
  name: networkWatcherName
  location: location
  properties: {}
}

resource flowLog 'Microsoft.Network/networkWatchers/flowLogs@2022-01-01' = {
  name: '${networkWatcherName}/${flowLogName}'
  location: location
  properties: {
    targetResourceId: existingNSG
    storageId: storageAccount.id
    enabled: true
    retentionPolicy: {
      days: retentionDays
      enabled: true
    }
    format: {
      type: 'JSON'
      version: flowLogsVersion
    }
  }
}

Bicep ファイルには、次のリソースが定義されています。

前のサンプルで強調表示されているコードは、NSG フロー ログのリソース定義を示しています。

Bicep ファイルをデプロイする

このクイックスタートでは、フロー ログの記録を有効にできるネットワーク セキュリティ グループがあることを前提としています。

  1. Bicep ファイルmain.bicep としてローカル コンピューターに保存します。

  2. Bicep ファイルをデプロイします。

    New-AzResourceGroup -Name 'exampleRG' -Location 'eastus'
    New-AzResourceGroupDeployment -ResourceGroupName 'exampleRG' -TemplateFile ./main.bicep
    

    既存のネットワーク セキュリティ グループのリソース ID を入力するように求められます。 ネットワーク セキュリティ グループのリソース ID の構文は次のとおりです。

    "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Network/networkSecurityGroups/<network-security-group-name>"
    

デプロイが完了すると、デプロイが成功したことを示すメッセージが表示されます。

デプロイメントを検証する

デプロイが成功したかどうかを確認するには、次の 2 つのオプションがあります。

デプロイに問題がある場合は、「Azure Resource Manager を使った一般的な Azure デプロイ エラーのトラブルシューティング」を参照してください。

リソースをクリーンアップする

完全デプロイ モードを使って Azure リソースを削除できます。 フロー ログ リソースを削除するには、削除するリソースを含めずに、完全モードでデプロイを指定します。 完全デプロイ モードの詳細をお読みください。

Azure portal で NSG フロー ログを無効にすることもできます。

  1. Azure portal にサインインします。

  2. ポータルの上部にある検索ボックスに、「network watcher」と入力します。 検索結果から Network Watcher を選択します。

  3. [ログ] の下の [フロー ログ] を選択します。

  4. フロー ログの一覧で、無効にするフロー ログを選びます。

  5. 無効にするを選択します。

このクイックスタートでは、Bicep ファイルを使用して NSG フロー ログを有効にする方法について説明しました。 次に、トラフィック分析を使用して NSG フロー ログ データを視覚化する方法について説明します。