在计算机上启用适用于 SQL 服务器的 Microsoft Defender

Defender for SQL 通过识别和减少潜在的数据库漏洞以及检测可能表明数据库受到威胁的异常活动来保护 IaaS SQL Server。

当 Defender for Cloud 检测到可疑数据库活动、访问或利用 SQL 计算机的潜在有害尝试、SQL 注入攻击、异常数据库访问和查询模式时,它会填充警报。 按这些事件类型创建的警报将显示在警报参考页上。

Defender for Cloud 使用漏洞评估来发现、跟踪和帮助你修正潜在的数据库漏洞。 评估扫描概述了 SQL 计算机的安全状态并提供了有关任何安全发现结果的详细信息。

详细了解计算机上 Azure SQL 服务器的漏洞评估

计算机上的 Defender for SQL 服务器可保护 Azure 中托管的 SQL 服务器,甚至本地计算机。

可用性

方面 详细信息
发布状态: 正式发布版 (GA)
定价: 定价页上显示了计算机上适用于 SQL 服务器的 Microsoft Defender 的计费方式
受保护的 SQL 版本: SQL Server 版本:2012、2014、2016、2017、2019、2022
- Azure 虚拟机上的 SQL
- 已启用 Azure Arc 的服务器上的 SQL Server

云: 由世纪互联运营的 Microsoft Azure(仅限高级威胁防护)

使用 AMA 代理在非 Azure 计算机上启用 Defender for SQL

在非 Azure 计算机上启用 Defender for SQL 的先决条件

  • 一个有效的 Azure 订阅。

  • 在要分配策略的订阅中具有订阅所有者权限

  • 计算机上的 SQL Server 的先决条件:

    • 权限:运行 SQL 服务器的 Windows 用户必须拥有对数据库的 Sysadmin 角色
    • 扩展:应将以下扩展添加到允许列表:
      • Defender for SQL(IaaS 和 Arc):
        • 发布者:Microsoft.Azure.AzureDefenderForSQL
        • 类型:AdvancedThreatProtection.Windows
      • SQL IaaS 扩展 (IaaS):
        • 发布者:Microsoft.SqlServer.Management
        • 类型:SqlIaaSAgent
      • SQL IaaS 扩展 (Arc):
        • 发布者:Microsoft.AzureData
        • 类型:WindowsAgent.SqlServer
      • AMA 扩展(IaaS 和 Arc):
        • 发布者:Microsoft.Azure.Monitor
        • 类型:AzureMonitorWindowsAgent

拒绝策略允许列表中的命名约定

  • 在创建资源时,Defender for SQL 使用以下命名约定:

    • DCR:MicrosoftDefenderForSQL--dcr
    • DCRA:/Microsoft.Insights/MicrosoftDefenderForSQL-RulesAssociation
    • 资源组:DefaultResourceGroup-
    • Log Analytics 工作区:D4SQL--
  • Defender for SQL 使用 MicrosoftDefenderForSQL 作为 createdBy 数据库标记

在非 Azure 计算机上启用 Defender for SQL 的步骤

  1. 将 SQL 服务器连接到 Azure Arc。有关支持的操作系统、连接配置和所需权限的详细信息,请参阅以下文档:

  2. 安装 Azure Arc 后,SQL Server 的 Azure 扩展会自动在数据库服务器上安装。 有关详细信息,请参阅管理 Azure Arc 启用的 SQL Server 自动连接

启用 Defender for SQL

  1. 登录到 Azure 门户

  2. 搜索并选择“Microsoft Defender for Cloud”。

  3. 在 Defender for Cloud 菜单中,选择“环境设置”。

  4. 选择相关订阅。

  5. 在“Defender 计划”页上,找到“数据库”计划并选择“选择类型”。

    显示“Defender 计划”页上“选择类型”的选择位置的屏幕截图。

  6. 在“资源类型选择”窗口中,将计划计算机上的 SQL Server 计划切换为“开”。

  7. 选择继续

  8. 选择“保存”。

  9. 启用后,我们将使用以下策略计划之一:

    • 配置 SQL VM 和已启用 Arc 的 SQL 服务器,以安装 Microsoft Defender for SQL 和 AMA,并采用默认 Log Analytics 工作区 (LAW)。 这会创建包含数据收集规则和默认 Log Analytics 工作区的资源组。 有关 Log Analytics 工作区的详细信息,请参阅 Log Analytics 工作区概述

    如何配置默认 Log Analytics 工作区的屏幕截图。

    • 配置 SQL VM 和已启用 Arc 的 SQL 服务器,以安装 Microsoft Defender for SQL 和 AMA,并采用用户定义的 LAW。 这会在预定义区域中创建包含数据收集规则和自定义 Log Analytics 工作区的资源组。 在此过程中,我们会安装 Azure 监视代理。 有关安装 AMA 代理的选项的详细信息,请参阅 Azure Monitor 代理先决条件

    如何配置用户定义的 Log Analytics 工作区的屏幕截图。

  10. 若要完成安装过程,对于 2017 及更早版本,需要重启 SQL 服务器(实例)。

使用 AMA 代理在 Azure 虚拟机上启用 Defender for SQL

在 Azure 虚拟机上启用 Defender for SQL 的先决条件

  • 一个有效的 Azure 订阅。
  • 在要分配策略的订阅中具有订阅所有者权限
  • 计算机上的 SQL Server 的先决条件:
    • 权限:运行 SQL 服务器的 Windows 用户必须拥有对数据库的 Sysadmin 角色
    • 扩展:应将以下扩展添加到允许列表:
      • Defender for SQL(IaaS 和 Arc):
        • 发布者:Microsoft.Azure.AzureDefenderForSQL
        • 类型:AdvancedThreatProtection.Windows
      • SQL IaaS 扩展 (IaaS):
        • 发布者:Microsoft.SqlServer.Management
        • 类型:SqlIaaSAgent
      • SQL IaaS 扩展 (Arc):
        • 发布者:Microsoft.AzureData
        • 类型:WindowsAgent.SqlServer
      • AMA 扩展(IaaS 和 Arc):
        • 发布者:Microsoft.Azure.Monitor
        • 类型:AzureMonitorWindowsAgent
  • 由于我们在中国北部创建资源组,作为自动预配启用过程的一部分,需要允许该区域,否则 Defender for SQL 无法成功完成安装过程。

在 Azure 虚拟机上启用 Defender for SQL 的步骤

  1. 登录到 Azure 门户

  2. 搜索并选择“Microsoft Defender for Cloud”。

  3. 在 Defender for Cloud 菜单中,选择“环境设置”。

  4. 选择相关订阅。

  5. 在“Defender 计划”页上,找到“数据库”计划并选择“选择类型”。

    显示在 Defender 计划页面中选择类型的位置的屏幕截图。

  6. 在“资源类型选择”窗口中,将计划计算机上的 SQL Server 计划切换为“开”。

  7. 选择继续

  8. 选择“保存”。

  9. 启用后,我们将使用以下策略计划之一:

    • 配置 SQL VM 和已启用 Arc 的 SQL 服务器,以安装 Microsoft Defender for SQL 和 AMA,并采用默认 Log Analytics 工作区 (LAW)。 这将在中国北部创建一个资源组和托管标识。 有关使用托管标识的详细信息,请参阅用于 Azure Monitor 中代理的资源管理器模板示例。 此外,还会创建一个包含数据收集规则 (DCR) 和默认 LAW 的资源组。 所有资源都会合并到这一个资源组中。 创建 DCR 和 LAW 是为了与虚拟机 (VM) 区域保持一致。

    如何配置默认 Log Analytics 工作区的屏幕截图。

    • 配置 SQL VM 和已启用 Arc 的 SQL 服务器,以安装 Microsoft Defender for SQL 和 AMA,并采用用户定义的 LAW。 这将在中国北部创建一个资源组和托管标识。 有关使用托管标识的详细信息,请参阅用于 Azure Monitor 中代理的资源管理器模板示例。 此外,还会在预定义区域中创建一个包含 DCR 和自定义 LAW 的资源组。

    如何配置用户定义的 Log Analytics 工作区的屏幕截图。

  10. 若要完成安装过程,对于 2017 及更早版本,需要重启 SQL 服务器(实例)。

常见问题

部署完成后,需要等待多长时间才能看到成功部署?

假设满足所有先决条件,SQL IaaS 扩展更新保护状态大约需要 30 分钟。

如何验证部署是否已成功结束,以及数据库现在是否已受到保护?

  1. 在 Azure 门户的顶部搜索栏中找到数据库。
  2. 在“安全性”选项卡下,选择“Defender for Cloud”
  3. 检查“保护状态”。 如果状态为“受保护”,则部署成功

显示保护状态为“受保护”的屏幕截图。

在安装过程中在 Azure SQL VM 上创建的托管标识有什么用途?

托管标识是推送 AMA 的 Azure Policy 的一部分。 AMA 使用它来访问数据库以收集数据,并通过 Log Analytics 工作区 (LAW) 将数据发送到 Defender for Cloud。 有关使用托管标识的详细信息,请参阅用于 Azure Monitor 中代理的资源管理器模板示例

是否可以使用自己的 DCR 或托管标识,而不是通过 Defender for Cloud 创建一个新的?

可以,我们支持用户仅通过以下脚本使用自己的标识或 DCR。 有关详细信息,请参阅在计算机上大规模启用 Microsoft Defender for SQL 服务器

通过自动预配过程创建多少个资源组和 Log Analytics 工作区?

默认情况下,我们会为每个具有 SQL 计算机的区域创建资源组、工作区和 DCR。 如果选择自定义工作区选项,则会在工作区所在的同一位置只创建一个资源组和 DCR。

如何在具有 AMA 的计算机上大规模启用 SQL 服务器?

有关如何同时在多个订阅之间启用 Microsoft Defender for SQL 自动预配的过程,请参阅在计算机上大规模启用 Microsoft Defender for SQL 服务器。 它适用于托管在 Azure 虚拟机、本地环境和已启用 Azure Arc 的 SQL 服务器上的 SQL 服务器。

LAW 中的哪些表用于 AMA?

SQL VM 和已启用 Arc 的 SQL 服务器上的 Defender for SQL 使用 Log Analytics 工作区 (LAW) 将数据从数据库传输到 Defender for Cloud 门户。 这意味着不会在 LAW 本地保存任何数据。 当 MMA 弃用时,将停用 LAW 中名为 SQLAtpStatus 和 SqlVulnerabilityAssessmentScanStatus 的表。 ATP 和 VA 状态可以在 Defender for Cloud 门户中查看。

Defender for SQL 如何从 SQL 服务器收集日志?

从 SQL Server 2017 开始,Defender for SQL 使用 Xevent。 在早期版本的 SQL Server 上,Defender for SQL 使用 SQL 服务器审核日志收集日志。

我在策略计划中看到一个名为 enableCollectionOfSqlQueriesForSecurityResearch 的参数。 这是否意味着我的数据会被收集用于分析?

此参数目前并未使用。 其默认值为 false,这意味着除非主动更改此值,否则它将保持为 false。 此参数没有任何影响。

有关详细信息,请参阅以下资源: