次の方法で共有


マシン上で大規模に Microsoft Defender for SQL サーバーを有効にする

Defender for Databases プランの Microsoft Defender for Cloud の SQL servers on machines コンポーネントは、SQL IaaS 拡張機能と Defender for SQL 拡張機能を保護します。 SQL servers on machines コンポーネントは、データベースの潜在的な脆弱性を識別して軽減しつつ、データベースに対する脅威を示す可能性のある異常なアクティビティを検出するのに役立ちます。

Defender for Databases プランの SQL servers on machines コンポーネントを有効にすると、自動プロビジョニング プロセスが自動で始まります。 自動プロビジョニング プロセスでは、Azure Monitor エージェント (AMA)、SQL IaaS 拡張機能、Defender for SQL 拡張機能など、プランが機能するために必要なすべてのコンポーネントがインストールされて構成されます。 また、自動プロビジョニング プロセスにより、ワークスペースの構成、データ収集ルール、ID (必要な場合)、SQL IaaS 拡張機能も設定されます。

このページでは、PowerShell スクリプトを使用して、複数のサブスクリプションにわたって、Defender for SQL の自動プロビジョニング プロセスを同時に有効にする方法について説明します。 このプロセスは、Azure Virtual Machines (VM)、オンプレミス環境、および Azure Arc 対応 SQL Server でホストされている SQL Server に適用されます。 この記事では、次のようなさまざまな構成に対応できる追加の機能を利用する方法についても説明します。

  • カスタム データ収集ルール

  • カスタム ID 管理

  • 既定のワークスペース統合

  • カスタム ワークスペース構成

前提条件

PowerShell スクリプトのパラメーターとサンプル

特定のサブスクリプションの Microsoft Defender for SQL on machines を有効にする PowerShell スクリプトには、ニーズに合わせてカスタマイズできる複数のパラメーターがあります。 次の表に、パラメーターの種類とその説明を示します。

パラメーター名 Required 説明
SubscriptionId: 必須 Defender for SQL servers on machines を有効にする Azure サブスクリプション ID。
RegisterSqlVmAgnet 必須 SQL VM Agent を一括で登録するかどうかを示すフラグ。

Azure の複数の SQL VM を SQL IaaS Agent 拡張機能に登録する方法を確認してください。
WorkspaceResourceId 省略可能 Log Analytics ワークスペースのリソース ID (既定のワークスペースではなくカスタム ワークスペースを使用する必要がある場合)。
DataCollectionRuleResourceId 省略可能 データ収集ルールのリソース ID (既定のデータ収集ルール (DCR) ではなくカスタム DCR を使用する場合)。
UserAssignedIdentityResourceId 省略可能 ユーザー割り当て ID のリソース ID (既定のユーザー割り当て ID ではなくカスタム ユーザー割り当て ID を使用する必要がある場合)。

次のサンプル スクリプトは、既定の Log Analytics ワークスペース、データ収集ルール、マネージド ID を使用する場合に適用されます。

Write-Host "------ Enable Defender for SQL on Machines example ------" 
$SubscriptionId = "<SubscriptionID>"
.\EnableDefenderForSqlOnMachines.ps1 -SubscriptionId $SubscriptionId -RegisterSqlVmAgnet $RegisterSqlVmAgnet 

次のサンプル スクリプトは、カスタム Log Analytics ワークスペース、データ収集ルール、マネージド ID を使用する場合に適用されます。

Write-Host "------ Enable Defender for SQL on Machines example ------" 
$SubscriptionId = "<SubscriptionID>" 
$RegisterSqlVmAgnet = "false" 
$WorkspaceResourceId = "/subscriptions/<SubscriptionID>/resourceGroups/someResourceGroup/providers/Microsoft.OperationalInsights/workspaces/someWorkspace" 
$DataCollectionRuleResourceId = "/subscriptions/<SubscriptionID>/resourceGroups/someOtherResourceGroup/providers/Microsoft.Insights/dataCollectionRules/someDcr" 
$UserAssignedIdentityResourceId = "/subscriptions/<SubscriptionID>/resourceGroups/someElseResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/someManagedIdentity" 
.\EnableDefenderForSqlOnMachines.ps1 -SubscriptionId $SubscriptionId -RegisterSqlVmAgnet $RegisterSqlVmAgnet -WorkspaceResourceId $WorkspaceResourceId -DataCollectionRuleResourceId $DataCollectionRuleResourceId -UserAssignedIdentityResourceId $UserAssignedIdentityResourceId

Defender for SQL servers on machines を大規模に有効にする

次の手順に従って、Defender for SQL servers on machines を大規模に有効にできます。

  1. PowerShell ウィンドウを開きます。

  2. EnableDefenderForSqlOnMachines.ps1 スクリプトをコピーします。

  3. このスクリプトを PowerShell に貼り付けます。

  4. 必要に応じてパラメーター情報を入力します。

  5. スクリプトを実行します。

次のステップ