数据发现和分类

适用于: Azure SQL 数据库 Azure SQL 托管实例 Azure Synapse Analytics

数据发现和分类内置于 Azure SQL 数据库、Azure SQL 托管实例和 Azure Synapse Analytics 中。 它提供用于发现、分类、标记和报告数据库中的敏感数据的基本功能。

最敏感的数据可能包括业务、财务、医疗保健或个人信息。 发现和分类这些数据在组织的信息保护方法中发挥举足轻重的作用。 它可以充当基础结构,用于:

  • 帮助满足数据隐私标准和法规符合性要求。
  • 各种安全方案,如监视(审核)对敏感数据的访问。
  • 控制对包含高度敏感数据的数据库的访问并增强其安全性。

备注

要了解本地 SQL Server,请参阅 SQL 数据发现和分类

什么是数据发现和分类?

数据发现和分类构成适用于 SQL 数据库、SQL 托管实例和 Azure Synapse 的信息保护范例,旨在保护数据,而不仅仅是数据库。 目前它支持以下功能:

  • 发现和建议: 分类引擎扫描数据库,并识别包含潜在敏感数据的列。 使用此功能可以通过 Azure 门户轻松地查看和应用建议的分类。

  • 标记: 可通过使用已添加到 SQL Server 数据库引擎的新元数据属性,将敏感度分类标签永久应用于列。 然后,此元数据可用于基于敏感度的审核和保护方案。

  • 查询结果集敏感度: 出于审核目的实时计算查询结果集的敏感度。

  • 可见性: 可以在 Azure 门户的详细仪表板中查看数据库分类状态。 此外,还可下载用于符合性和审核目的以及其他需求的报表(Excel 格式)。

发现、分类和标记敏感列

本部分介绍用于以下方案的步骤:

  • 发现、分类和标记数据库中包含敏感数据的列。
  • 查看数据库的当前分类状态并导出报表。

分类包含两种元数据属性:

  • 标签:主要分类属性,用于定义列中存储的数据的敏感度级别。
  • 信息类型:提供有关列中存储的数据类型的更详尽信息的属性。

定义和自定义分类

数据发现和分类附带了一组内置的敏感度标签和一组内置的信息类型和发现逻辑。 你可以自定义此分类并专门针对你的环境定义分类构造的集合和级别。

可在一个中心位置针对整个 Azure 组织定义和自定义分类。 该位置在 Azure 安全中心内,是安全策略的一部分。 仅对组织根管理组具有管理权限的人员可以执行此任务。

在信息保护的策略管理过程中,可定义自定义标签、对其进行分级,并将其与选定的一组信息类型相关联。 还可以添加自己的自定义信息类型,并使用字符串模式对其进行配置。 这些模式已添加到用于识别数据库中的此类型数据的发现逻辑。

定义组织范围的策略后,可以继续使用自定义策略对各个数据库进行分类。

对数据库进行分类

备注

下面的示例使用的是 Azure SQL 数据库,但你应选择要配置数据发现和分类的适当产品。

  1. 转到 Azure 门户

  2. 转到“Azure SQL 数据库”窗格的“安全”标题下的“数据发现和分类” 。 “概述”选项卡中包含数据库当前分类状态的摘要。 该摘要包含所有分类列的详细列表,你还可以对其进行筛选,以便仅显示特定的架构部分、信息类型和标签。 如果尚未对任何列进行分类,请跳到步骤 4

    概述

  3. 若要下载 Excel 格式的报表,请选择窗格顶部菜单中的“导出”。

  4. 若要开始对数据进行分类,请选择“数据发现和分类”页面的“分类”选项卡 。

    分类引擎扫描数据库,寻找包含潜在敏感数据的列,并提供建议的列分类列表。

  5. 查看并应用分类建议:

    • 若要查看建议的列分类列表,请选择窗格底部的“建议”面板。

    • 若要接受针对特定列的建议,请选中相关行左侧列中的复选框。 若要将所有建议标记为已接受,请选中建议表标题中最左侧的复选框。

    • 若要应用所选建议,请选择“接受所选建议”。

    针对分类的建议

  6. 还可以手动对列进行分类,这是基于建议分类的替代选项:

    1. 选择窗格顶部菜单中的“添加分类”。

    2. 在打开的上下文窗口中,选择要分类的架构、表和列,并选择信息类型和敏感度标签。

    3. 选择上下文窗口底部的“添加分类”。

    手动添加分类

  7. 若要完成分类并永久使用新分类元数据标记数据库列,请在“分类”页中选择“保存” 。

审核对敏感数据的访问

信息保护范例的一个重要方面是能够监视对敏感数据的访问。 Azure SQL 审核已得到增强,在审核日志中包括了名为 data_sensitivity_information 的新字段。 此字段记录查询返回的数据的敏感度分类(标签)。 下面是一个示例:

审核日志

权限

以下内置角色可读取数据库的数据分类:

  • 所有者
  • 读取器
  • 参与者
  • SQL 安全管理器
  • 用户访问管理员

以下内置角色可修改数据库的数据分类:

  • 所有者
  • 参与者
  • SQL 安全管理器

Azure RBAC 中了解有关基于角色的权限的详细信息。

管理分类

可以使用 T-SQL、REST API 或 PowerShell 来管理分类。

使用 T-SQL

可以使用 T-SQL 添加或删除列分类,以及检索整个数据库的所有分类。

备注

如果使用 T-SQL 管理标签,则不会验证组织信息保护策略(门户建议中显示的标签集)中是否存在添加到列的标签。 因此,是否要验证这一点完全由你决定。

有关使用 T-SQL 进行分类的信息,请参阅以下参考内容:

使用 PowerShell cmdlet

可使用 PowerShell 管理 Azure SQL 数据库和 Azure SQL 托管实例的分类和建议。

适用于 Azure SQL 数据库的 PowerShell cmdlet

适用于 Azure SQL 托管实例的 PowerShell cmdlet

使用 REST API

可以使用 REST API 以编程方式管理分类和建议。 已发布的 REST API 支持以下操作:

后续步骤

  • 请考虑配置 Azure SQL 审核来监视和审核对已分类敏感数据的访问。