マシン上の Defender for SQL Server を無効にする

この記事を使用して、Microsoft Defender for Cloud のマシン上の SQL Server のDefenderを無効にします。

Defender for SQL Servers on Machines プランは、Defender for Databases の一部です。 Azure仮想マシン (VM) とAzure Arc対応 VM でホストされているSQL Serverデータベースを保護します。

このプランを無効にするとどうなりますか

プランを無効にすると、Defender for Cloudは選択したマシンに対するSQLアラートや推奨の提供を停止します。

前提条件

  • サブスクリプション所有者のアクセス許可が必要です。

  • Defender for Cloud 環境で Defender for SQL Server on Machines プランを有効にする必要があります。

  • Arc対応サーバーのローカル拡張リストを設定するには、そのサーバー上で昇格されたPowerShellセッションとAzure Connected Machineエージェントが必要です。

  • Azure VMポリシーの例では、Az.Resources、Az.Compute、 モジュールを含めてAz.Accountsをインストールします。

マシン上の Defender for SQL Server を無効にする

マシン上の SQL Server のDefenderを無効にするには、次の手順に従います。

  1. Azure portal にサインインする

  2. Microsoft Defender for Cloud>Environment settings に移動します。

  3. 関連するサブスクリプションを選択します。

  4. Defenderプランで「データベースプラン」を見つけて「選択タイプ」を選択してください。

    [Defender プラン] ページのどこで種類を選択するかを示すスクリーンショット。

  5. リソースの種類選択で、マシンのSQLサーバープランをオフに設定します。

    マシン上の SQL サーバーの [オフ] ボタンが配置されている場所を示すスクリーンショット。

  6. [続行]>[保存] を選択します。

リソース レベルでマシン上の Defender for SQL Server を無効にする

個々のSQL ServerインスタンスまたはSQL仮想マシンのリソースレベルでDefender for SQL Servers on Machinesを無効にするには、以下の手順に従ってください。

拡張機能をアンインストールしても、サブスクリプションレベルのDefenderプラン設定は変わりません。 ここで説明しているローカル拡張機能リストは、Arc対応サーバーにのみ適用され、Azure VMには適用されません。

  1. Arc対応サーバーの場合は、アンインストールする前に 拡張機能をローカルブロックリストに追加 してください。 あるいは、既存の許可リストから拡張機能を削除し、少なくとももう1つのエントリーを残す方法もあります。

    インストールをブロックしても、インストール済みの拡張機能は削除されません。 制限を設定した後にアンインストールの手順を完了してください。

  2. Azure VMの場合は、アンインストールする前にそのVMでその拡張機能をブロックするポリシーを割り当ててください。

  3. Azureポータルで、以下のいずれかのオプションに移動します。

    • Azure Arc>データ サービス>SQL Server インスタンス
    • SQL 仮想マシン
  4. 関連する SQL Server インスタンスを選択します。

  5. セキュリティ メニューを見つけて、[ 拡張機能とアプリケーション] を選択します。

    セキュリティ セクションの下の Defender for Cloud の場所を示すスクリーンショット。

  6. SQL (IaaS および Arc) 拡張機能のDefenderを選択します。

    拡張機能の詳細が次の値と一致することを確認します。

    • 拡張機能: Defender for SQL (IaaS および Arc)
    • パブリッシャー: Microsoft.Azure.AzureDefenderForSQL
    • 種類: AdvancedThreatProtection.Windows
  7. アンインストール を選択します。

Arc 対応サーバーでローカル インストールをブロックする

Azure Connected Machineエージェントのローカル拡張機能ブロックリストを使って、特定のサーバーでの再インストールを防ぎましょう。 これらのコマンドは、Arc対応のWindowsサーバー上の昇格されたPowerShellセッションで実行してください。 これらはPowerShellから呼び出した azcmagent コマンドで、AzPowerShellのコマンドレットではありません。

  1. Defender for SQLの拡張機能をブロックリストに追加してください。 --addフラグは既存のエントリを保持します。

    $AgentPath = "$env:ProgramFiles\AzureConnectedMachineAgent\azcmagent.exe"
    & $AgentPath config set extensions.blocklist `
        "Microsoft.Azure.AzureDefenderForSQL/AdvancedThreatProtection.Windows" --add
    if ($LASTEXITCODE -ne 0) { throw "Couldn't add the Defender for SQL extension to the block list." }
    
  2. ブロックリストに以下の内容が含まれているか Microsoft.Azure.AzureDefenderForSQL/AdvancedThreatProtection.Windows確認してください:

    & $AgentPath config get extensions.blocklist
    
  3. リソースレベルのアンインストール手順に戻り、拡張機能を削除してください。 ブロックリストは既存の拡張機能をアンインストールしません。

代わりに既存の拡張許可リストを管理する場合は、Defender for SQL エントリを削除しつつ、他の必要なエントリはすべて保持してください。 許可リストをクリアしたり空にしたりしてこの拡張機能をブロックしないでください。どちらのリストもインストールを制限しなければ、すべての拡張機能は許可されます。 拡張が両方のリストに残る場合、ブロックリストが優先されます。

エージェントモニターモードでは、ローカルの許可リストやブロックリストを編集できません。

詳細については、 Arc拡張の許可リストおよびブロックリスト 、 azcmagentの設定コマンドを参照してください。

Azure VM へのインストールをブロック

Azure PowerShellを使って拒否ポリシーを作成し、除外したい個別のVMに割り当ててください。 このポリシーは、発行元と型によって識別されるDefender for SQL拡張のみをブロックします。 他の拡張機能の制限は変わりません。

このポリシーはサブスクリプションレベルのDefenderプラン設定を変更したり、自動プロビジョニングをオフにしたりしません。 ポリシーに合致するインストールの試みは却下されます。

  1. サインインして、VMを含むサブスクリプションを選択してください:

    Connect-AzAccount
    Set-AzContext -SubscriptionId "<subscription-id>" -ErrorAction Stop
    
  2. Azure VMsでDefender for SQL拡張をブロックするポリシー定義を作成しましょう。 定義はそれを割り当てるまで制限を強制しません。

    $PolicyRule = @'
    {
      "if": {
        "allOf": [
          { "field": "type", "equals": "Microsoft.Compute/virtualMachines/extensions" },
          { "field": "Microsoft.Compute/virtualMachines/extensions/publisher", "equals": "Microsoft.Azure.AzureDefenderForSQL" },
          { "field": "Microsoft.Compute/virtualMachines/extensions/type", "equals": "AdvancedThreatProtection.Windows" }
        ]
      },
      "then": {
        "effect": "deny"
      }
    }
    '@
    
    $Definition = New-AzPolicyDefinition `
        -Name "block-defender-sql-vm-extension" `
        -DisplayName "Block Defender for SQL extension installation on Azure VMs" `
        -Policy $PolicyRule `
        -Mode All `
        -ErrorAction Stop
    
  3. VMを取得し、そのリソースIDにポリシーを割り当てます。 VMのIDを使うことで、割り当てはリソースグループやサブスクリプションではなく、そのVMに制限されます。

    $VM = Get-AzVM `
        -ResourceGroupName "<resource-group>" `
        -Name "<vm-name>" `
        -ErrorAction Stop
    
    $Assignment = New-AzPolicyAssignment `
        -Name "block-defender-sql" `
        -Scope $VM.Id `
        -PolicyDefinition $Definition `
        -EnforcementMode Default `
        -ErrorAction Stop
    
  4. 割り当てが意図されたVMを対象としており、その強制モードが Default であることを確認しましょう。

    $Assignment | Select-Object Name, Scope, EnforcementMode
    

    拡張機能をアンインストールする前に、割り当てが有効になるまで時間を置いてください。 新しい割り当てはそのスコープに適用されるまで約5分かかります。 詳細については、Azure Policy evaluation triggers をご覧ください。

  5. リソースレベルのアンインストール手順に戻り、拡張機能を削除してください。 再インストールをブロックするために割り当て状態をそのままにしておく。 そのVMで再度保護を有効にする前に割り当てを削除してください。

詳細は、 New-AzPolicyDefinition、 New-AzPolicyAssignment、および VM拡張インストールの制限を参照してください。