Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
重要
注意:根据世纪互联发布的公告,Azure 中国区将于2026年10月1日正式停止提供所有 Microsoft Defender for Cloud 功能。
Microsoft Defender for Cloud 中 Defender for Databases 计划的 SQL Servers on Machines 组件为 SQL IaaS 和 Defender for SQL 扩展提供保护。 此组件识别并缓解潜在的数据库漏洞,并检测可能指示数据库威胁的异常活动。
启用 Defender for Databases 计划中的 SQL Servers on Machines 组件时,将开始自动预配。 自动预配功能会安装并配置所需组件,包括 Azure Monitor 代理(AMA)、SQL IaaS 扩展和 Defender for SQL 扩展。 它还根据需要配置工作区、数据收集规则(DCR)和标识。
本文介绍如何使用 PowerShell 脚本跨多个订阅为 Defender for SQL 启用自动预配。 该自动配置程序适用于托管在Azure 虚拟机(虚拟机)、本地环境以及支持Azure Arc的SQL服务器上。 它还涵盖可选配置,例如:
- 自定义数据收集规则
- 自定义标识管理
- 默认工作区集成
- 自定义工作区配置
先决条件
开始之前:
- 查看 Azure VM 上的 SQL Server、已启用 Azure Arc 的 SQL Server以及如何从 Log Analytics 代理迁移到 Azure Monitor 代理。
- 为您的平台安装PowerShell:在Windows上安装PowerShell,在Linux上安装PowerShell,在macOS上安装PowerShell,或在ARM上安装PowerShell。
- 安装这些 PowerShell 模块。 安装说明请参见 Install-Module cmdlet参考文献:
Az.ResourcesAz.OperationalInsightsAz.AccountsAzAz.PolicyInsightsAz.Security
- 具有虚拟机参与者、参与者或所有者权限。
PowerShell 脚本参数和示例
在给定订阅上的计算机上启用 Microsoft Defender for SQL 的 PowerShell 脚本具有多个参数,你可以根据需求进行自定义。 下表列出了参数及其说明:
| 参数名称 | 必填 | 说明 |
|---|---|---|
SubscriptionId |
必填 | 要为其启用 Defender for SQL Servers on Machines 的 Azure 订阅 ID。 |
RegisterSqlVmAgnet |
必填 | 用于指示是否批量注册 SQL VM 代理的标志。 此参数名称与当前上游脚本匹配。 可以将Azure中的多个 SQL VM 批量注册到 SQL IaaS 代理扩展。 有关详细信息,请参阅 使用 SQL IaaS 代理扩展注册多个 SQL VM。 |
WorkspaceResourceId |
可选 | 如果您想使用自定义工作区而非默认工作区,请指定 Log Analytics 工作区的资源 ID。 |
DataCollectionRuleResourceId |
可选 | 如果使用自定义数据收集规则 (DCR) 而非默认规则,则为该数据收集规则的资源 ID。 |
UserAssignedIdentityResourceId |
可选 | 如果要改用自定义用户分配标识而非默认标识,则指定用户分配标识的资源 ID。 |
以下示例支持了Defender for SQL on Machines,并使用了批量SQL虚拟机代理注册(RegisterSqlVmAgnet = $true)并使用默认的Log Analytics工作区、数据收集规则和托管身份。
Write-Host "------ Enable Defender for SQL on Machines example ------"
$SubscriptionId = "<SubscriptionID>"
$RegisterSqlVmAgnet = $true
.\EnableDefenderForSqlOnMachines.ps1 -SubscriptionId $SubscriptionId -RegisterSqlVmAgnet $RegisterSqlVmAgnet
以下示例使 Defender for SQL on Machine 无需批量 SQL VM 代理注册RegisterSqlVmAgnet = $false()即可实现,并指定了自定义的 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
大规模启用适用于计算机上 SQL Server 的 Defender
若要大规模为计算机上的 SQL Server 启用Defender,
打开 PowerShell 窗口。
从 Defender for Cloud GitHub 存储库复制 EnableDefenderForSqlOnMachines.ps1 脚本。
将脚本粘贴到 PowerShell 中。
根据需要输入参数信息。
运行该脚本。