验证 SQL 计算机保护

使用“计算机上的 Defender for SQL Server”计划对 SQL VM 启用保护后,请验证 SQL Server 是否按预期受到保护。

验证对多个 Azure VM 的保护

通过运行 Get-SqlVMProtectionStatusReport.ps1 PowerShell 脚本,检索和查看指定 Azure 订阅中所有 SQL 虚拟机的 Defender for SQL Servers on Machines 保护状态报告。 该脚本仅适用于 Azure VM。

验证对多个已启用 Azure Arc 的 VM 的保护

  1. 在 Azure 门户中,搜索并选择 Resource Graph 资源管理器

  2. 复制并运行以下查询,以标识未处于受保护状态的已启用 Azure Arc 的 VM。

    resources
    | where type == "microsoft.azurearcdata/sqlserverinstances"
    | extend SQLonArcProtection= tostring(properties.azureDefenderStatus)
    | extend ProtectionStatusLastUpdate = tostring(properties.azureDefenderStatusLastUpdated)
    | project name, SQLonArcProtection, ProtectionStatusLastUpdate, resourceGroup, location, type, tenantId, subscriptionId, properties
    | order by ['name'] asc
    
  3. 查看结果,具体检查 SQLonArcProtection 状态。 如果结果未显示 Protected,则表示该 SQL Server VM 或已启用 Azure Arc 的 SQL Server 未受保护。

    脚本运行后的结果屏幕的屏幕截图。

  4. ProtectionStatusLastUpdate如果字段在最后一天未显示日期,则计算机可能不受保护。 验证单个 SQL Server VM 的保护

    显示 SQL 实例的最后一次状态更新的屏幕截图。

该脚本可以返回以下可能的保护状态:

  • 受保护:Defender for SQL 主动保护实例。 通过检查“上次更新”字段确保信息不会过时。
  • 不受保护:Defender for SQL 在保护实例时遇到问题。 此状态表示需要一些干预才能确保成功的保护。
  • 非活动:Defender for SQL 在计算机上运行,但 SQL 实例已暂停或停止。
  • 未知:无法检索或计算机上不存在保护状态。 在这种情况下,假定实例不受 Defender for SQL 的保护。

验证单个 SQL Server VM 上的保护

  1. 根据环境中的资源,在 Azure 门户中搜索并选择 SQL 虚拟机SQL Server - Azure Arc

  2. 找到并选择相关资源。

  3. 在“安全性”选项卡下,选择“Defender for Cloud”

  4. 检查“保护状态”。 如果状态为“受保护”,则部署成功

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

排查未受保护的计算机问题

如果数据库未受到保护,请按照故障排除指南中的说明进行修正。