Defender for Databases プランの Microsoft Defender for Cloud の SQL Servers on Machines コンポーネントは、SQL IaaS 拡張機能と Defender for SQL 拡張機能を保護します。 このコンポーネントは、データベースの潜在的な脆弱性を識別して軽減し、データベースに対する脅威を示す可能性のある異常なアクティビティを検出します。
Defender for Databases プランの SQL Server on Machines コンポーネントを有効にすると、自動プロビジョニングが開始されます。 自動プロビジョニングでは、Azure Monitor エージェント (AMA)、SQL IaaS 拡張機能、SQL 拡張機能のDefenderなど、必要なコンポーネントがインストールおよび構成されます。 また、必要に応じて、ワークスペース、データ収集規則 (DCR)、ID も構成します。
この記事では、PowerShell スクリプトを使用して、複数のサブスクリプションにわたって SQL のDefenderの自動プロビジョニングを有効にする方法について説明します。 この自動プロビジョニング手順は、Azure 仮想マシン(VM)、オンプレミス環境、Azure Arc対応SQLサーバー上でホストされるSQLサーバーに適用されます。 また、次のようなオプションの構成についても説明します。
- カスタムデータ収集ルール
- カスタムアイデンティティ管理
- デフォルトのワークスペース統合
- カスタムワークスペース設定
前提条件
準備:
Azure VM 上の SQL Server、Azure Arc 対応の SQL Server、および Log Analytics エージェントから Azure Monitor Agent に移行する方法を確認してください。
Web Services (AWS) アカウントを Microsoft Defender for Cloud に接続します。
Google Cloud Platform (GCP) を Microsoft Defender for Cloud に接続します。
プラットフォームにPowerShellをインストールする:WindowsにPowerShellをインストールし、LinuxにPowerShellをインストール、macOSにPowerShellを、またはARMにPowerShellをインストールする。
これらの PowerShell モジュールをインストールします。 取り付け手順については、 Install-Module cmdletの参考文献をご覧ください。
Az.ResourcesAz.OperationalInsightsAz.AccountsAzAz.PolicyInsightsAz.Security
仮想マシンの 貢献者、 貢献者、 または所有者 の権限を持つこと。
PowerShell スクリプトのパラメーターとサンプル
Microsoft Defender for SQL on Machines を特定のAzureサブスクリプションで使うPowerShellスクリプトには、ニーズに合わせてカスタマイズできるいくつかのパラメータがあります。 次の表に、パラメーターの種類とその説明を示します。
| パラメーター名 | 必須 | Description |
|---|---|---|
SubscriptionId |
必須 | Defender for SQL Servers on Machines を有効にする Azure サブスクリプション ID。 |
RegisterSqlVmAgnet |
必須 | SQL VMエージェントを一括登録するかどうかを示す値です。 このパラメーター名は、現在のアップストリーム スクリプトと一致します。 AZURE内の複数の SQL VM を SQL IaaS Agent 拡張機能に一括で登録できます。 詳細については、「 複数の SQL VM を SQL IaaS Agent 拡張機能に登録する」を参照してください。 |
WorkspaceResourceId |
Optional | Log Analytics ワークスペースのリソース ID (既定のワークスペースではなくカスタム ワークスペースを使用する必要がある場合)。 |
DataCollectionRuleResourceId |
Optional | データ収集ルールのリソース ID (既定のデータ収集ルール (DCR) ではなくカスタム DCR を使用する場合)。 |
UserAssignedIdentityResourceId |
Optional | ユーザー割り当て ID のリソース ID (既定のユーザー割り当て ID ではなくカスタム ユーザー割り当て ID を使用する必要がある場合)。 |
以下の例は、一括SQL VM Agent登録(RegisterSqlVmAgnet = $true)を用いて、デフォルトのLog Analyticsワークスペース、データ収集ルール、マネージデンドIDを用いて、マシン上のSQLのDefenderを可能にします。
Write-Host "------ Enable Defender for SQL on Machines example ------"
$SubscriptionId = "<SubscriptionID>"
$RegisterSqlVmAgnet = $true
.\EnableDefenderForSqlOnMachines.ps1 -SubscriptionId $SubscriptionId -RegisterSqlVmAgnet $RegisterSqlVmAgnet
以下の例は、SQL VM Agent(RegisterSqlVmAgnet = $false)の一括登録なしにマシン上のSQLをDefender可能にし、カスタムLog Analyticsワークスペース、データ収集ルール、マネージデンティティを規定しています。
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 を大規模に有効にする
マシン上の SQL Server のDefenderを大規模に有効にするには:
PowerShell のウィンドウを開きます。
Defender for Cloud GitHubリポジトリから EnableDefenderForSqlOnMachines.ps1 スクリプトをコピーしてください。
このスクリプトを PowerShell に貼り付けます。
必要に応じてパラメーター情報を入力します。
スクリプトを実行します。