Microsoft Purview 信息保护扫描程序自定义报告 (预览)

本文介绍Microsoft Purview 信息保护扫描程序自定义报告功能 (预览) 。 自定义报告为扫描程序管理员提供扫描程序群集数据库中所需的数据,以针对扫描结果生成自己的报告,包括标记、保护状态和匹配的敏感信息类型 (SNET) 。

自定义报告适用于 Microsoft Purview 信息保护 客户端和扫描程序版本 3.2.89.0 或更高版本。 自定义报告由管理员通过 扫描程序功能控制启用。

自定义报告支持的功能

如果不使用自定义报告,扫描程序将生成按扫描的 CSV 和 TXT 报告,并将有限的一组操作数据存储在群集数据库中。 若要全面了解文件状态(更改的内容、标记的内容、受保护的内容以及存在哪些敏感数据),管理员必须跨扫描周期组合多个 CSV 导出并将其加载到单独的报告工具中。

自定义报告将文件状态和 SIT 匹配数据移动到扫描程序群集数据库中,以便管理员可以:

  • 查询存储库中每个扫描文件的当前和以前的标签、保护状态和 SIT 计数。
  • 计算扫描 (之间的增量,例如,每个文件匹配的 SIT 数) 的变化。
  • 查看针对哪些文件匹配了哪些敏感信息类型,以及每个类型的匹配项数。
  • 将扫描程序群集数据库连接到他们选择的报表工具, (例如 Power BI、企业报告仓库或基于 SQL 的仪表板工具) 而无需先将 CSV 导出拼凑在一起。

扫描程序仍然是事实来源。 启用该功能后,自定义报告会在下一个扫描周期将其他报告数据写入扫描程序群集数据库。

数据库架构

自定义报告所需的报表和列首先添加到客户端版本 3.2.57.0 中的扫描程序群集数据库架构。 在启用自定义报告之前,新列和表存在,但不会填充。 现有扫描程序功能保持不变。

注意

无需先安装客户端版本 3.2.57.0。 无论是全新安装扫描程序还是从任何早期版本升级扫描程序,扫描程序都部署完整的数据库架构 (包括安装或升级时) 自定义报告表和列。

使用 扫描程序功能控件启用自定义报告时,扫描程序将在下一个扫描周期中开始填充以下数据。

添加到 dbo.ScannerFiles

dbo.ScannerFiles 继续为每个扫描的文件保留一行。 自定义报告将填充以下附加列,以捕获文件状态以及当前和上一次扫描之间的增量:

类型 说明
LabelName NVARCHAR(MAX) 应用于文件的当前标签名称。 NULL 如果未标记,则为 。
PrevLabelId NVARCHAR(MAX) 在上一次扫描中应用的标签 ID,以字符串的形式存储。 NULL 如果以前未标记,则为 。
PrevLabelName NVARCHAR(MAX) 在上一次扫描中应用的标签名称。 NULL 如果以前未标记,则为 。
ProtectionState NVARCHAR(MAX) 扫描结束时文件的当前保护状态。
PrevProtectionState NVARCHAR(MAX) 在上一次扫描时记录的保护状态。
ClassificationCount INT默认 0 当前扫描时文件中的敏感信息类型匹配计数。
LatestScanSessionId UNIQUEIDENTIFIER 标识接触文件的最新扫描会话。 用于跨扫描周期计算增量。
FileStatus NVARCHAR(MAX) 扫描周期中文件的最终处置 (例如,由 ProcessJob设置的“需要理由”状态,或者 Failed 对于无法) 处理的文件。

新表: dbo.MatchedClassificationAction

dbo.MatchedClassificationAction 是一个新表,用于存储每个扫描的每个文件匹配的敏感信息类型。 每一行表示单个扫描会话中单个文件的一个匹配 SIT。

类型 说明
Id BIGINT IDENTITY (主键) 行的代理键。
FilePath NVARCHAR(MAX) 与 SIT 匹配的文件的完整路径。
FileHashPath BINARY(64) 文件路径的哈希。 联接到 dbo.ScannerFiles.HashPath 和 的索引是为了提高联接性能。
ScanSessionId UNIQUEIDENTIFIER 标识与 SIT 匹配的扫描会话。 联接到 dbo.ScannerFiles.ScanSessionId 和 已编制索引。
MatchedInformationTypeName NVARCHAR(MAX) 匹配敏感信息类型的显示名称 (例如, U.S. social security number (SSN)) 。
MatchedInformationTypeId UNIQUEIDENTIFIER 匹配的 SIT 的 GUID。 的本地Microsoft Purview 信息保护日志Workload=OnPremisesFileShareScanner中使用相同的 GUID。
MatchedInformationTypeCount INT默认 0 文件中此 SIT 的匹配项数。
ConfidenceScore INT默认 0 比赛的置信度分数。

新表: dbo.ScannedFilesArchive

dbo.ScannedFilesArchive 是一个新表,用于存储扫描程序处理的文件的历史存档,其中行与创建这些文件的扫描会话相关联。 与仅保留每个文件的最新状态的实时 dbo.ScannerFiles 表不同,此表保留先前的存档状态,用于更改跟踪、报告和审核。

Files扫描程序会跳过,因为自上一个扫描会话以来未发生任何更改,因此以后的扫描会话不包含所有文件的完整快照。 相反,仅保留上次处理文件的会话中的现有存档条目,这会保持存档精益,同时保留有意义的更改历史记录。

类型 说明
Id BIGINT IDENTITY (主键) 行的代理键。
HashPath BINARY(64) 文件路径的哈希。 联接到 dbo.ScannerFiles.HashPath
FullPath NVARCHAR(MAX) 扫描会话时文件的完整路径。
ScanSessionId UNIQUEIDENTIFIER 生成此存档行的扫描会话。
LastModifiedTime DATETIME2 扫描会话期间观察到的文件的上次修改时间戳。
LabelId UNIQUEIDENTIFIER 扫描会话时应用于文件的标签 ID。
IssueCount INT默认 0 此扫描会话中针对文件记录的问题数。
EndScan DATETIME2 在此扫描会话中完成文件处理的时间。
JobStartTime DATETIME2 启动此文件的处理作业的时间。
LabelName NVARCHAR(MAX) 在此扫描会话时应用的标签名称。
PrevLabelId NVARCHAR(MAX) 上一个扫描会话中的标签 ID,以字符串的形式存储。
PrevLabelName NVARCHAR(MAX) 上一个扫描会话中的标签名称。
ProtectionState NVARCHAR(MAX) 此扫描会话时的保护状态。
PrevProtectionState NVARCHAR(MAX) 上一个扫描会话中的保护状态。
ClassificationCount INT、默认值 0、可为 null 此扫描会话中敏感信息类型匹配的计数。
LatestScanSessionId UNIQUEIDENTIFIER 记录此存档行时已知已触摸文件的最新扫描会话。
FileStatus NVARCHAR(MAX) 例如 Modified ,扫描会话中文件的处置 (或 Deleted) 。

dbo.ScanSummary (每次扫描的总数) 保持不变。

自定义报告可以回答的示例问题

自定义报告填充数据库后,管理员可以运行如下查询:

  • 哪些存储库的匹配 SIT 浓度最高,自上次扫描以来,该浓度有何变化?
  • 在最近的扫描周期中标记或重新标记了哪些文件,以前的标签是什么?
  • 哪些文件仍未标记,但包含一个或多个敏感信息类型的匹配项?
  • 哪些敏感信息类型在给定存储库中最为普遍,其置信度如何?
  • 自上次扫描以来,哪些文件从未受保护的 (或反向) 转换?

启用自定义报告

自定义报告通过 管理员控制的功能配置打开。 从扫描程序群集中的任何节点运行:

Set-ScannerConfiguration -FeatureSettings @{CustomReporting=$true}

若要在新扫描程序节点上安装时启用自定义报告,请将 参数与 Install-Scanner 配合使用-FeatureSettings

Install-Scanner -SqlServerInstance SQLSERVER1 -Cluster Europe -FeatureSettings @{CustomReporting=$true}

若要确认当前状态,请运行:

Get-ScannerConfiguration

该更改在下一个扫描周期对群集中的每个节点生效。 无需重启服务。

若要停止填充自定义报告列和表,请运行:

Set-ScannerConfiguration -FeatureSettings @{CustomReporting=$false}

禁用自定义报告会停止新的写入。 不会删除已写入报表列和表的数据,因此稍后可以重新启用该功能,而不会丢失数据。

规划用于报告的扫描程序群集数据库

启用自定义报告后,扫描程序群集数据库会存储更多的数据:

  • 中每个文件的其他列数 dbo.ScannerFiles
  • 每个扫描中每个匹配的 SIT 一行,每个文件 dbo.MatchedClassificationAction
  • 扫描会话期间扫描程序处理和存档的文件存档行 dbo.ScannedFilesArchive (不是每个周期中每个未更改的文件)

针对扫描程序群集数据库生成报告还会添加一个读取工作负载,该工作负荷与扫描程序的操作读取和写入一起运行。

在生产环境中启用自定义报告之前,请考虑:

  • 群集大小和扫描卷。 估计每个周期扫描的文件数、每个文件的典型 SIT 匹配数以及扫描频率。 使用这些数字来调整数据库的大小。
  • 操作影响。 针对扫描程序写入的同一数据库的报告查询可以在扫描周期内与扫描程序争用资源。
  • 实际需要的报告工作负荷。 交互式仪表板、计划提取和即席查询各有不同的影响。

对于大多数生产部署,我们建议在 SQL Server Enterprise 上托管扫描程序群集数据库,以便可以将只读副本 (replica) 专用于报告。 使用SQL Server Always On可用性组,可以将报告流量路由到可读的辅助副本 (replica) 。 然后,报告查询在辅助副本 (replica) 上运行,而不是与主要扫描程序的操作工作负载竞争。

这种分离使报告工具 (例如,Power BI) 连接到只读副本 (replica) ,并按自己的节奏刷新,而不会影响主数据库上的扫描吞吐量。

注意

扫描程序本身始终从主数据库进行读取和写入。 只有自定义报告工作负荷应指向只读副本 (replica) 。

预览期间的限制

  • 自定义报告在此预览版中不包括内置仪表板。 客户针对扫描程序群集数据库生成自己的报表。
  • 管理员控制的功能配置 配置的设置不会与 Microsoft Purview 门户同步。 并非每个扫描程序功能最终都可以从门户进行配置。 对于也可从 Microsoft Purview 门户配置的功能,门户中配置的设置优先,并阻止 PowerShell 进行更新。