在计算机上大规模启用 Microsoft Defender for SQL 服务器
在 Defender for Databases 计划的计算机组件上,Microsoft Defender for Cloud 的 SQL 服务器用于保护 SQL IaaS 和 Defender for SQL 扩展。 计算机组件上的 SQL 服务器用于标识和缓解潜在数据库漏洞,同时检测可能表明数据库有威胁的异常活动。
在 Defender for Databases 计划的计算机组件上启用 SQL Server 时,会自动启动自动预配过程。 自动预配过程会安装并配置计划正常运行所需的所有组件。 例如 Azure Monitor 代理 (AMA)、SQL IaaS 扩展和 Defender for SQL 扩展。 自动预配过程还会设置工作区配置、数据收集规则、标识(如果需要)以及 SQL IaaS 扩展。
本页内容介绍如何使用 PowerShell 脚本同时在多个订阅中为 Defender for SQL 启用自动预配过程。 此过程适用于在 Azure VM、本地环境和已启用 Azure Arc 的 SQL 服务器上托管的 SQL 服务器。 本文还介绍了如何利用可适应各种配置的额外功能,例如:
自定义数据收集规则
自定义标识管理
默认工作区集成
自定义工作区配置
先决条件
了解以下方面的知识:
在 Windows、Linux、macOS 或 Azure 资源管理器 (ARM) 上安装 PowerShell。
-
- Az.Resources
- Az.OperationalInsights
- Az.Accounts
- Az
- Az.PolicyInsights
- Az.Security
权限:需要“虚拟机参与者”、“参与者”或“所有者”规则。
PowerShell 脚本参数和示例
在给定订阅上的计算机上启用 Microsoft Defender for SQL 的 PowerShell 脚本具有多个参数,你可以根据需求进行自定义。 下表列出了参数及其说明:
参数名称 | 必须 | 说明 |
---|---|---|
SubscriptionId: | 必须 | 要为其在计算机上启用 Defender for SQL 服务器的 Azure 订阅 ID。 |
RegisterSqlVmAgnet | 必须 | 一个指示是否批量注册 SQL VM 代理的标志。 详细了解如何使用 SQL IaaS 代理扩展在 Azure 中注册多个 SQL VM。 |
WorkspaceResourceId | 可选 | 如果要使用自定义工作区而不是默认工作区,则为 Log Analytics 工作区的资源 ID。 |
DataCollectionRuleResourceId | 可选 | 如果要使用自定义 DCR 而不是默认 DCR,则为数据收集规则的资源 ID。 |
UserAssignedIdentityResourceId | 可选 | 如果要使用自定义用户分配的标识而不是默认标识,则为用户分配的标识的资源 ID。 |
使用默认 Log Analytics 工作区、数据收集规则和托管标识时,以下示例脚本适用。
Write-Host "------ Enable Defender for SQL on Machines example ------"
$SubscriptionId = "<SubscriptionID>"
.\EnableDefenderForSqlOnMachines.ps1 -SubscriptionId $SubscriptionId -RegisterSqlVmAgnet $RegisterSqlVmAgnet
使用自定义 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 服务器
要在计算机上大规模启用 Defender for SQL 服务器,请执行以下步骤。
打开 PowerShell 窗口。
将脚本粘贴到 PowerShell 中。
根据需要输入参数信息。
运行该脚本。