Microsoft Purview 安全最佳做法

本文为 Microsoft Purview 治理解决方案的常见安全要求提供了最佳做法。 所述的安全策略遵循分层深层防御方法。

注意

这些最佳做法涵盖 Microsoft Purview 统一数据治理解决方案的安全性。 有关 Microsoft Purview 风险和合规性解决方案的详细信息, 请转到此处。 有关 Microsoft Purview 的一般信息, 请转到此处

显示 Microsoft Purview 中的深层防御的屏幕截图。

在将这些建议应用于环境之前,应咨询安全团队,因为有些建议可能不适用于你的安全要求。

网络安全性

Microsoft Purview 是 Azure 中的平台即服务 (PaaS) 解决方案。 可以为 Microsoft Purview 帐户启用以下网络安全功能:

显示网络中 Microsoft Purview 帐户的屏幕截图。

有关详细信息,请参阅 与 Azure PaaS 服务连接相关的最佳做法

为 Microsoft Purview 帐户部署专用终结点

如果需要从专用网络内部使用 Microsoft Purview,建议将 Azure 专用链接 Service 与 Microsoft Purview 帐户配合使用,进行部分或端到端隔离,以连接到 Microsoft Purview 治理门户、访问 Microsoft Purview 终结点并扫描数据源。

Microsoft Purview 帐户 专用终结点用于添加另一层安全层,因此仅允许从虚拟网络中发起的客户端调用访问 Microsoft Purview 帐户。 此专用终结点也是门户专用终结点的先决条件。

需要使用 Microsoft Purview 门户 专用终结点才能使用专用网络与 Microsoft Purview 治理门户建立连接。

Microsoft Purview 可以使用引入专用终结点扫描 Azure 或本地环境中的数据源。

有关详细信息,请参阅 Microsoft Purview 网络体系结构和最佳做法

使用 Microsoft Purview 防火墙阻止公共访问

可以禁用 Microsoft Purview 公共访问,以完全从公共 Internet 切断对 Microsoft Purview 帐户的访问。 在这种情况下,应考虑以下要求:

  • 必须基于 端到端网络隔离方案部署 Microsoft Purview。
  • 若要访问 Microsoft Purview 治理门户和 Microsoft Purview 终结点,需要使用连接到专用网络的管理计算机通过专用网络访问 Microsoft Purview。
  • 查看 已知限制
  • 若要扫描 Azure 平台即服务数据源,请查看 通过引入专用终结点扫描数据源的支持矩阵
  • 还必须为 Azure 数据源配置专用终结点。
  • 若要扫描数据源,必须使用自承载集成运行时。

有关详细信息,请参阅 限制公共访问的防火墙

使用网络安全组

可以使用 Azure 网络安全组来筛选传入和传出 Azure 虚拟网络中的 Azure 资源的网络流量。 网络安全组包含允许或拒绝多种类型的 Azure 资源的入站网络流量或出站网络流量 的安全规则 。 对于每个规则,可以指定源和目标、端口和协议。

网络安全组可以应用于网络接口或 Azure 虚拟网络子网,其中部署了 Microsoft Purview 专用终结点、自承载集成运行时 VM 和 Azure 数据源。

有关详细信息,请参阅 为专用终结点应用 NSG 规则

Microsoft Purview 扫描的 数据源 上需要以下 NSG 规则:

方向 Source 源端口范围 目标 目标端口 协议 操作
入境 自承载集成运行时 VM 的专用 IP 地址或子网 * 数据源专用 IP 地址或子网 443 任何 允许

需要从 管理计算机上 使用以下 NSG 规则才能访问 Microsoft Purview 治理门户:

方向 Source 源端口范围 目标 目标端口 协议 操作
出站 管理计算机的专用 IP 地址或子网 * Microsoft Purview 帐户和门户专用终结点 IP 地址或子网 443 任何 允许
出站 管理计算机的专用 IP 地址或子网 * 服务标记: AzureCloud 443 任何 允许

对于 Microsoft Purview 扫描和元数据引入, 自承载集成运行时 VM 上需要以下 NSG 规则:

重要

请考虑根据数据源类型添加具有相关服务标记的其他规则。

方向 Source 源端口范围 目标 目标端口 协议 操作
出站 自承载集成运行时 VM 的专用 IP 地址或子网 * 数据源专用 IP 地址或子网 443 任何 允许
出站 自承载集成运行时 VM 的专用 IP 地址或子网 * Microsoft Purview 帐户和引入专用终结点 IP 地址或子网 443 任何 允许
出站 自承载集成运行时 VM 的专用 IP 地址或子网 * 服务标记: Servicebus 443 任何 允许
出站 自承载集成运行时 VM 的专用 IP 地址或子网 * 服务标记: Storage 443 任何 允许
出站 自承载集成运行时 VM 的专用 IP 地址或子网 * 服务标记: AzureActiveDirectory 443 任何 允许
出站 自承载集成运行时 VM 的专用 IP 地址或子网 * 服务标记: DataFactory 443 任何 允许
出站 自承载集成运行时 VM 的专用 IP 地址或子网 * 服务标记: KeyVault 443 任何 允许

Microsoft Purview 帐户、门户和引入专用终结点需要以下 NSG 规则:

方向 Source 源端口范围 目标 目标端口 协议 操作
入境 自承载集成运行时 VM 的专用 IP 地址或子网 * Microsoft Purview 帐户和引入专用终结点 IP 地址或子网 443 任何 允许
入境 管理计算机的专用 IP 地址或子网 * Microsoft Purview 帐户和引入专用终结点 IP 地址或子网 443 任何 允许

有关详细信息,请参阅 自承载集成运行时网络要求

访问管理

标识和访问管理提供了大量安全保障的基础。 它基于云服务中的标识身份验证和授权控制启用访问。 这些控制措施保护数据和资源,并确定应允许哪些请求。

与 Microsoft Purview 中的角色和访问管理相关,可以应用以下安全最佳做法:

  • 定义在控制平面和数据平面中管理 Microsoft Purview 的角色和职责:
    • 定义在 Azure 订阅中部署和管理 Microsoft Purview 所需的角色和任务。
    • 定义使用 Microsoft Purview 执行数据管理和治理所需的角色和任务。
  • 将角色分配给 Azure Active Directory 组,而不是将角色分配给单个用户。
  • 使用 Azure Active Directory 权利管理 ,使用访问包将用户访问权限映射到 Azure AD 组。
  • 对 Microsoft Purview 用户强制实施多重身份验证,尤其是对具有特权角色的用户,例如集合管理员、数据源管理员或数据策展人。

在控制平面和数据平面中管理 Microsoft Purview 帐户

控制平面是指与 Azure 部署和管理 Azure 资源管理器中的 Microsoft Purview 相关的所有操作。

数据平面是指与数据映射和数据目录内与 Microsoft Purview 交互相关的所有操作。

可以从与 Microsoft Purview 实例的 Azure 订阅关联的 Azure Active Directory 租户将控制平面和数据平面角色分配给用户、安全组和服务主体。

控制平面操作和数据平面操作的示例:

任务 范围 建议的角色 要使用哪些角色?
部署 Microsoft Purview 帐户 控制平面 Azure 订阅所有者或参与者 Azure RBAC 角色
为 Microsoft Purview 设置专用终结点 控制平面 参与者 Azure RBAC 角色
删除 Microsoft Purview 帐户 控制平面 参与者 Azure RBAC 角色
添加或管理 自承载集成运行时 (SHIR) 控制平面 数据源管理员 Microsoft Purview 角色
查看 Microsoft Purview 指标以获取当前容量单位 控制平面 读者 Azure RBAC 角色
创建集合 数据平面 集合管理员 Microsoft Purview 角色
注册数据源 数据平面 集合管理员 Microsoft Purview 角色
扫描SQL Server 数据平面 数据源管理员和数据读取者或数据策展人 Microsoft Purview 角色
在Microsoft Purview 数据目录内搜索 数据平面 数据源管理员和数据读取者或数据策展人 Microsoft Purview 角色

Microsoft Purview 平面角色在 Microsoft Purview 集合中的 Microsoft Purview 实例中定义和管理。 有关详细信息,请参阅 Microsoft Purview 中的访问控制

针对 Azure 控制平面任务,请遵循 Azure 基于角色的访问建议

身份验证和授权

若要访问 Microsoft Purview,必须对用户进行身份验证和授权。 身份验证是证明用户是他们声称的身份的过程。 授权是指控制对集合分配的 Microsoft Purview 内部的访问权限。

我们使用 Azure Active Directory 在集合中为 Microsoft Purview 提供身份验证和授权机制。 可以从与托管 Microsoft Purview 实例的 Azure 订阅关联的 Azure Active Directory 租户将 Microsoft Purview 角色分配给以下安全主体:

  • 用户和来宾用户 (是否已添加到 Azure AD 租户)
  • 安全组
  • 托管标识
  • 服务主体

可以将 Microsoft Purview 细化角色分配给 Microsoft Purview 实例内的灵活集合层次结构。

显示 Microsoft Purview 访问管理的屏幕截图。

定义最低特权模型

一般规则是,对于想要强制实施数据访问安全策略的组织来说,基于 了解最低特权 安全原则限制访问是势在必行的。

在 Microsoft Purview 中,可以使用 Microsoft Purview 集合来组织数据源、资产和扫描。 集合是 Microsoft Purview 中元数据的分层分组,但同时它们提供一种机制来管理跨 Microsoft Purview 的访问。 可以根据集合的层次结构将 Microsoft Purview 中的角色分配给集合。

使用 Microsoft Purview 集合 实现组织的元数据层次结构,以实现基于最低特权模型的集中式或委派管理和治理层次结构。

在 Microsoft Purview 集合中分配角色时,请遵循最低特权访问模型,方法是在团队中分离职责,并仅向用户授予执行作业所需的访问权限。

有关如何基于 Microsoft Purview 集合层次结构在 Microsoft Purview 中分配最低特权访问模型的详细信息,请参阅 Microsoft Purview 中的访问控制

降低特权帐户的曝光率

保护特权访问是保护业务资产的关键第一步。 最大程度地减少有权访问安全信息或资源的人数,减少恶意用户获得访问权限或授权用户无意中影响敏感资源的可能性。

减少 Microsoft Purview 实例内具有写入访问权限的用户数。 将集合管理员和数据策展人角色的数量保持在根集合的最小值。

使用多重身份验证和条件访问

Azure Active Directory 多重身份验证 提供了另一层安全和身份验证。 为了增强安全性,我们建议对所有特权帐户强制实施 条件访问策略

通过使用 Azure Active Directory 条件访问策略,在登录时为分配到 Microsoft Purview 角色的所有用户应用 Azure AD 多重身份验证,并在 Microsoft Purview 实例中具有修改访问权限:集合管理员、数据源管理员、数据策展人。

为管理员帐户启用多重身份验证,并确保管理员帐户用户已注册 MFA。

可以通过选择 Microsoft Purview 作为云应用来定义条件访问策略。

防止意外删除 Microsoft Purview 帐户

在 Azure 中,可以将 资源锁 应用于 Azure 订阅、资源组或资源,以防止意外删除或修改关键资源。

为 Microsoft Purview 帐户启用 Azure 资源锁,以防止意外删除 Azure 订阅中的 Microsoft Purview 实例。

CanNotDelete向 Microsoft Purview 帐户添加 或 ReadOnly 锁不会阻止 Microsoft Purview 数据平面中的删除或修改操作,但是,它会阻止控制平面中的任何操作,例如删除 Microsoft Purview 帐户、部署专用终结点或配置诊断设置。

有关详细信息,请参阅 了解锁的范围

资源锁可以分配给 Microsoft Purview 资源组或资源,但是,不能将 Azure 资源锁分配给 Microsoft Purview 托管资源或托管资源组。

实施打破玻璃策略

为 Azure Active Directory 租户、Azure 订阅和 Microsoft Purview 帐户规划防故障策略,以防止租户范围的帐户锁定。

有关 Azure AD 和 Azure 紧急访问计划的详细信息,请参阅 在 Azure AD 中管理紧急访问帐户

有关 Microsoft Purview 打破玻璃策略的详细信息,请参阅 Microsoft Purview 集合最佳做法和设计建议

威胁防护和防止数据外泄

Microsoft Purview 提供了对数据敏感性的丰富见解,这使安全团队使用 Microsoft Defender for Cloud 来管理组织的安全态势并防范其工作负载受到威胁,这让安全团队很有价值。 数据资源仍然是恶意参与者的热门目标,因此安全团队在云环境中识别敏感数据资源并确定其优先级并保护敏感数据资源至关重要。 为了应对这一挑战,我们宣布将Microsoft Defender for Cloud 与 Microsoft Purview 集成为公共预览版。

与 Microsoft 365 和 Microsoft Defender for Cloud 集成

通常,公司中安全组织面临的最大挑战之一是根据资产的重要性和敏感度来识别和保护资产。 Microsoft 最近宣布将 Microsoft Purview 与 Microsoft Defender for Cloud 集成为公共预览版,以帮助克服这些挑战。

如果在 Microsoft Purview 中扩展了资产和数据库列的 Microsoft 365 敏感度标签,则可以根据检测到的资产敏感度标签,使用 Microsoft Defender for Cloud 跟踪高价值资产。

  • 对于建议,我们提供了 安全控制措施 ,以帮助你了解每个建议对整体安全状况的重要性。 Microsoft Defender for Cloud 包括每个控件的安全分数值,以帮助确定安全工作的优先级。 有关详细信息,请参阅 安全控制及其建议

  • 对于警报,我们已为每个警报分配严重 性标签 ,以帮助你确定每个警报的优先级。 有关详细信息,请参阅 如何对警报进行分类?

有关详细信息,请参阅 将 Microsoft Purview 与 Azure 安全产品集成

信息保护

保护元数据提取和存储

Microsoft Purview 是云中的数据治理解决方案。 可以从本地、Azure 或多云环境从各种数据系统注册和扫描不同的数据源到 Microsoft Purview。 在 Microsoft Purview 中注册和扫描数据源时,实际数据和数据源将保留在其原始位置,仅从数据源中提取元数据并存储在Microsoft Purview 数据映射中,这意味着无需将数据移出区域或其原始位置即可将元数据提取到 Microsoft Purview 中。

此外,部署 Microsoft Purview 帐户时,还会在 Azure 订阅中部署托管资源组。 托管 Azure 存储帐户部署在此资源组内。 托管存储帐户用于在扫描期间从数据源引入元数据。 由于这些资源由 Microsoft Purview 使用,因此除 Microsoft Purview 帐户外,任何其他用户或主体都无法访问这些资源。 这是因为在部署 Microsoft Purview 帐户时,会为所有主体自动向此资源组添加 Azure 基于角色的访问控制 (RBAC) 拒绝分配,如果这些资源不是从 Microsoft Purview 启动的,则阻止对这些资源执行任何 CRUD 操作。

元数据存储在何处?

Microsoft Purview 在扫描过程中仅将不同数据源系统中的元数据提取到Microsoft Purview 数据映射

可以在任何 受支持的 Azure 区域中的 Azure 订阅内部署 Microsoft Purview 帐户。

所有元数据都存储在 Microsoft Purview 实例中的数据映射中。 这意味着元数据与 Microsoft Purview 实例存储在同一区域中。

如何从数据源中提取元数据?

Microsoft Purview 允许使用以下任何选项从数据源中提取元数据:

  • Azure 运行时。 在数据源所在的同一区域内提取和处理元数据数据。

    显示 Microsoft Purview、Azure 运行时和数据源之间的连接流的屏幕截图。

    1. 从 Microsoft Purview 数据映射通过 Azure 集成运行时启动手动或自动扫描。

    2. Azure 集成运行时连接到数据源以提取元数据。

    3. 元数据在 Microsoft Purview 托管存储中排队,并存储在Azure Blob 存储中。

    4. 元数据将发送到Microsoft Purview 数据映射。

  • 自承载集成运行时。 元数据由自承载集成运行时 VM 内存中的自承载集成运行时提取和处理,然后再发送到Microsoft Purview 数据映射。 在这种情况下,客户必须在其 Azure 订阅或本地环境中部署和管理一个或多个基于 Windows 的自承载集成运行时虚拟机。 扫描本地和基于 VM 的数据源始终需要使用自承载集成运行时。 这些数据源不支持 Azure 集成运行时。 以下步骤演示了使用自承载集成运行时扫描数据源时的高级别通信流。

    显示 Microsoft Purview、自承载运行时和数据源之间的连接流的屏幕截图。

    1. 触发手动或自动扫描。 Microsoft Purview 连接到 Azure 密钥保管库以检索凭据以访问数据源。

    2. 扫描从Microsoft Purview 数据映射通过自承载集成运行时启动。

    3. VM 中的自承载集成运行时服务连接到数据源以提取元数据。

    4. 元数据在自承载集成运行时的 VM 内存中进行处理。 元数据在 Microsoft Purview 托管存储中排队,然后存储在 Azure Blob 存储 中。

    5. 元数据将发送到Microsoft Purview 数据映射。

    如果需要从具有敏感数据的数据源中提取元数据(这些数据不能离开本地网络边界),强烈建议在数据源所在的公司网络内部署自承载集成运行时 VM,以在本地提取和处理元数据,并仅将元数据发送到 Microsoft Purview。

    显示 Microsoft Purview(本地自承载运行时)与本地网络中数据源之间的连接流的屏幕截图。

    1. 触发手动或自动扫描。 Microsoft Purview 连接到 Azure 密钥保管库以检索凭据以访问数据源。

    2. 扫描通过本地自承载集成运行时启动。

    3. VM 中的自承载集成运行时服务连接到数据源以提取元数据。

    4. 元数据在自承载集成运行时的 VM 内存中进行处理。 元数据在 Microsoft Purview 托管存储中排队,然后存储在 Azure Blob 存储 中。 实际数据永远不会离开网络边界。

    5. 元数据将发送到Microsoft Purview 数据映射。

信息保护和加密

Azure 提供了许多机制,用于将数据保密,以及从一个位置移动到另一个位置。 对于 Microsoft Purview,使用 Microsoft 管理的密钥对数据进行静态加密,在传输数据时,使用传输层安全性 (TLS) v1.2 或更高版本。

传输层安全性 (传输中加密)

传输中的数据 (也称为动态数据,) 在 Microsoft Purview 中加密。

除了访问控制之外,为了增加另一层安全性,Microsoft Purview 通过使用传输层安全性 (TLS) 加密动态数据来保护客户数据,并保护传输中的数据免受“带外”攻击 ((如流量捕获) )。 它使用加密来确保攻击者无法轻松读取或修改数据。

Microsoft Purview 支持使用传输层安全性 (TLS) v1.2 或更高版本进行传输中的数据加密。

有关详细信息,请参阅 加密传输中的敏感信息

透明数据加密 (静态加密)

静态数据包括以任何数字格式驻留在物理媒体上的持久存储中的信息。 介质可以包括磁介质或光学介质上的文件、存档的数据以及 Azure 区域中的数据备份。

为了在访问控制之外添加另一层安全性,Microsoft Purview 会加密静态数据,以防止“带外”攻击 ((例如访问基础存储) )。 它使用 Microsoft 管理的密钥进行加密。 这种做法有助于确保攻击者无法轻松读取或修改数据。

有关详细信息,请参阅 加密静态敏感数据

可选事件中心命名空间配置

每个 Microsoft Purview 帐户都可以配置可通过其 Atlas Kafka 终结点访问的事件中心。 这可以在创建时在“配置”下启用,也可以从 Kafka 配置下的Azure 门户启用。 如果用于将事件分发到 Microsoft Purview 帐户数据映射或外部,建议仅启用可选的托管事件中心。 若要删除此信息分发点,请不要配置这些终结点,或者删除它们。

若要删除配置的事件中心命名空间,可以按照以下步骤操作:

  1. Azure 门户中搜索并打开 Microsoft Purview 帐户。
  2. 在Azure 门户的 Microsoft Purview 帐户页上的“设置”下选择“Kafka 配置”。
  3. 选择要禁用的事件中心。 (Hook 中心将消息发送到 Microsoft Purview。通知中心接收 notifications.)
  4. 选择“ 删除 ”以保存该选项并开始禁用过程。 这可能需要几分钟才能完成。 显示Azure 门户中 Microsoft Purview 帐户页的 Kafka 配置页的屏幕截图,其中突出显示了“删除”按钮。

注意

如果在禁用此事件中心命名空间时具有引入专用终结点,则禁用引入专用终结点后,该引入专用终结点可能会显示为断开连接。

有关配置这些事件中心命名空间的详细信息,请参阅: 为 Atlas Kafka 配置事件中心主题

凭据管理

若要将数据源系统中的元数据提取到Microsoft Purview 数据映射,需要在 Microsoft Purview 数据映射 中注册和扫描数据源系统。 为了自动执行此过程,我们为 Microsoft Purview 中的不同数据源系统提供了可用的 连接器 ,以简化注册和扫描过程。

若要连接到数据源,Microsoft Purview 需要对数据源系统具有只读访问权限的凭据。

建议在可能的情况下优先使用以下凭据选项进行扫描:

  1. Microsoft Purview 托管标识
  2. 用户分配的托管标识
  3. 服务主体
  4. 其他选项,例如帐户密钥、SQL 身份验证等。

如果使用任何选项而不是托管标识,则必须在 Azure 密钥保管库中存储和保护所有凭据。 Microsoft Purview 要求获取/列出 Azure 密钥保管库 资源上的机密访问权限。

一般情况下,可以使用以下选项来设置集成运行时和凭据以扫描数据源系统:

应用场景 运行时选项 支持的凭据
数据源是 Azure 平台即服务,例如Azure Data Lake Storage第 2 代或公用网络中的Azure SQL 选项 1:Azure 运行时 Microsoft Purview 托管标识、服务主体或访问密钥/SQL 身份验证 (,具体取决于 Azure 数据源类型)
数据源是 Azure 平台即服务,例如Azure Data Lake Storage第 2 代或公用网络中的Azure SQL 选项 2:自承载集成运行时 服务主体或访问密钥/SQL 身份验证 (,具体取决于 Azure 数据源类型)
数据源是 Azure 平台即服务,例如使用 Azure 专用链接 服务在专用网络中Azure Data Lake Storage第 2 代或Azure SQL 自承载集成运行时 服务主体或访问密钥/SQL 身份验证 (,具体取决于 Azure 数据源类型)
数据源位于 Azure IaaS VM 中,例如SQL Server Azure 中部署的自承载集成运行时 SQL 身份验证或基本身份验证 (,具体取决于 Azure 数据源类型)
数据源位于本地系统(如 SQL Server 或 Oracle)内 在 Azure 或本地网络中部署的自承载集成运行时 SQL 身份验证或基本身份验证 (,具体取决于 Azure 数据源类型)
多云 基于数据源类型的 Azure 运行时或自承载集成运行时 支持的凭据选项因数据源类型而异
Power BI 租户 Azure 运行时 Microsoft Purview 托管标识

使用 本指南 详细了解每个源及其支持的身份验证选项。

其他建议

为自承载运行时 VM 应用安全最佳做法

如果使用自承载集成运行时扫描 Microsoft Purview 中的数据源,请考虑在 Azure 或本地环境中保护自承载集成运行时 VM 的部署和管理。

对于在 Azure 中部署为虚拟机的自承载集成运行时 VM,请遵循 Windows 虚拟机的安全最佳做法建议

  • 使用网络安全组和 Azure Defender 实时访问锁定到 VM 的入站流量。
  • 安装防病毒或反恶意软件。
  • 部署 Azure Defender 以获取有关 VM 上任何潜在异常的见解。
  • 限制自承载集成运行时 VM 中的软件数量。 尽管对于 Microsoft Purview 的自承载运行时,不强制要求使用专用 VM,但我们强烈建议使用专用 VM,尤其是对于生产环境。
  • 使用 用于 VM 的 Azure Monitor 监视 VM。 通过使用 Log Analytics 代理,可以捕获性能指标等内容,以调整 VM 所需的容量。
  • 通过将虚拟机与 Microsoft Defender for Cloud 集成,可以预防、检测和响应威胁。
  • 使计算机保持最新状态。 可以在 Azure 自动化 中启用自动Windows 更新或使用更新管理来管理操作系统的操作系统级别更新。
  • 使用多台计算机来提高复原能力和可用性。 可以部署和注册多个自承载集成运行时,以跨多个自承载集成运行时计算机分发扫描,或者在虚拟机规模集上部署自承载集成运行时,以提高冗余和可伸缩性。
  • (可选)可以计划从自承载集成运行时 VM 启用 Azure 备份,以便在发生 VM 级灾难时增加自承载集成运行时 VM 的恢复时间。

后续步骤