Microsoft Purview 网络体系结构和最佳做法
Microsoft Purview 治理解决方案是用于数据治理的平台即服务 (PaaS) 解决方案。 Microsoft Purview 帐户具有公共终结点,这些终结点可通过 Internet 进行访问,用于连接到此服务。 但是,所有终结点都通过 Microsoft Entra 登录名和基于角色的访问控制 (RBAC) 进行保护。
注意
这些最佳做法涵盖了 Microsoft Purview 统一治理解决方案的网络结构。 有关 Microsoft Purview 风险和合规性解决方案的详细信息,请转到此处。 有关 Microsoft Purview 的更多信息,请转到此处。
为了额外增加一层安全措施,可以为 Microsoft Purview 帐户创建专用终结点。 然后,获取从 Azure 中的虚拟网络到 Microsoft Purview 帐户及其托管资源的专用 IP 地址。 此地址会将虚拟网络与 Microsoft Purview 帐户之间的所有流量限制为通过专用链接传送,以便用户与 API 和 Microsoft Purview 治理门户进行交互或执行扫描和引入。
目前,Microsoft Purview 防火墙为 Purview 帐户的公共终结点提供访问控制。 使用专用终结点时,可以使用防火墙来允许或阻止通过公共终结点进行的所有访问。 有关详细信息,请参阅 Microsoft Purview 防火墙选项
可以根据网络、连接和安全要求,将 Microsoft Purview 帐户设置并保持为访问基础服务或引入功能。 使用本最佳做法指南来定义和准备网络环境,以便可以从网络或云访问 Microsoft Purview 并扫描数据源。
本指南涵盖以下网络选项:
- 使用 Azure 公共终结点。
- 使用专用终结点。
- 使用专用终结点并允许在同一 Microsoft Purview 帐户上进行公共访问。
- 使用 Azure 公共终结点访问 Microsoft Purview 治理门户和用于引入的专用终结点。
本指南介绍一些最常见的适用于 Microsoft Purview 的网络体系结构方案。 尽管不限于这些方案,但在为 Microsoft Purview 帐户规划网络时,请记住此服务的限制。
先决条件
若要了解哪个网络选项最适合你的环境,我们建议先执行以下操作:
在 Microsoft Purview 中注册和扫描任何数据源之前,先查看网络拓扑和安全要求。 有关详细信息,请参阅:定义 Azure 网络拓扑。
选项 1:使用公共终结点
默认情况下,可以通过可从 Internet 访问的公共终结点使用 Microsoft Purview 帐户。 如果要满足以下要求,请在 Microsoft Purview 帐户中允许公用网络:
- 扫描或连接到 Microsoft Purview 终结点时不需要任何专用连接。
- 所有数据源都只是软件即服务 (SaaS) 应用程序。
- 所有数据源都有一个可通过 Internet 访问的公共终结点。
- 企业用户需要通过 Internet 访问 Microsoft Purview 帐户和 Microsoft Purview 治理门户。
集成运行时选项
若要在 Microsoft Purview 帐户防火墙设置为允许公共访问时扫描数据源,可以使用 Azure 集成运行时和自承载集成运行时。 如何使用它们取决于数据源支持性。
下面是一些最佳做法:
可以使用 Azure 集成运行时或自承载集成运行时来扫描 Azure SQL 数据库或 Azure Blob 存储等 Azure 数据源,但我们建议尽可能使用 Azure 集成运行时扫描 Azure 数据源,以降低成本和管理开销。
若要扫描多个 Azure 数据源,请使用公用网络和 Azure 集成运行时。 以下步骤说明了使用 Azure 集成运行时扫描 Azure 中的数据源时的概要通信流:
注意
此图形仅适用于在 2023 年 12 月 15 日之后创建的 Microsoft Purview 帐户(或使用 API 版本 2023-05-01-preview 后的版本部署的帐户)。
将使用 Azure 集成运行时从 Microsoft Purview 数据映射启动手动或自动扫描。
Azure 集成运行时连接到数据源以提取元数据。
元数据在 Microsoft Purview 引入存储帐户中排队,并暂时存储在 Azure Blob 存储中。
元数据发送到 Microsoft Purview 数据映射。
扫描本地和基于 VM 的数据源始终需要使用自承载集成运行时。 这些数据源不支持 Azure 集成运行时。 以下步骤说明了使用自承载集成运行时扫描数据源时的概要通信流。 在第一个关系图显示的场景中,资源位于 Azure 中或 Azure 中的 VM 上。 第二个关系图显示了具有本地资源的场景。 从 Microsoft Purview 的角度来看,这两者的步骤相同:
将触发手动或自动扫描。 Microsoft Purview 连接到 Azure 密钥保管库以检索凭据来访问数据源。
将使用自承载集成运行时从 Microsoft Purview 数据映射启动扫描。
来自 VM 或本地计算机的自承载集成运行时服务连接到数据源以提取元数据。
元数据在自承载集成运行时的计算机内存中进行处理。 元数据在 Microsoft Purview 引入存储中排队,然后暂时存储在 Azure Blob 存储中。 实际数据永远不会离开网络边界。
元数据发送到 Microsoft Purview 数据映射。
身份验证选项
在 Microsoft Purview 中扫描数据源时,需要提供凭据。 然后,Microsoft Purview 可以使用集成运行时从数据源读取资产的元数据。 有关支持的身份验证类型和所需权限的详细信息,请参阅每个数据源文章。 身份验证选项和要求因以下因素而异:
数据源类型。 例如,如果数据源是 Azure SQL 数据库,则需要使用 db_datareader 访问权限登录每个数据库。 这可以是用户分配的托管标识或 Microsoft Purview 托管标识。 或者,可以是 Microsoft Entra ID 中作为 db_datareader 已添加到 SQL 数据库的服务主体。
如果数据源是 Azure Blob 存储,则可以使用 Microsoft Purview 托管标识,或在 Microsoft Entra ID 中作为 Azure 存储帐户上的 Blob 存储数据读取者角色添加的服务主体。 或者,可使用存储帐户的密钥。
身份验证类型。 建议尽可能使用 Microsoft Purview 托管标识来扫描 Azure 数据源,以减少管理开销。 对于任何其他身份验证类型,需要在 Microsoft Purview 中为源身份验证设置凭据:
- 在 Azure 密钥保管库中生成机密。
- 在 Microsoft Purview 中注册密钥保管库。
- 在 Microsoft Purview 中,使用保存在密钥保管库中的机密创建新凭据。
扫描中使用的运行时类型。 目前无法将 Microsoft Purview 托管标识与自承载集成运行时配合使用。
其他注意事项
- 如果选择使用公共终结点扫描数据源,则自承载集成运行时 VM 必须具有对数据源和 Azure 终结点的出站访问权限。
- 自承载集成运行时 VM 必须与 Azure 终结点建立出站连接。
选项 2:使用专用终结点
与其他 PaaS 解决方案类似,Microsoft Purview 不支持直接部署到虚拟网络。 因此,不能将某些网络功能与产品/服务的资源配合使用,例如网络安全组、路由表或其他依赖于网络的设备(例如 Azure 防火墙)。 可改用可在虚拟网络中启用的专用终结点。 然后,可以禁用公共 Internet 访问,以安全地连接到 Microsoft Purview。
如果要满足以下任何要求,则必须对 Microsoft Purview 帐户使用专用终结点:
需要为 Microsoft Purview 帐户和数据源实现端到端的网络隔离。
需要阻止公开访问 Microsoft Purview 帐户。
平台即服务 (PaaS) 数据源是使用专用终结点部署的,并且你已阻止通过公共终结点进行的所有访问。
本地或基础结构即服务 (IaaS) 数据源无法访问公共终结点。
设计注意事项
- 若要以私密且安全的方式连接到 Microsoft Purview 帐户,需要部署一个帐户和一个门户专用终结点。 例如,如果要通过 API 连接到 Microsoft Purview 或使用 Microsoft Purview 治理门户,则此部署是必要的。
- 如果需要使用专用终结点连接到 Microsoft Purview 治理门户,则必须部署帐户和门户专用终结点。
- 若要通过专用连接来扫描数据源,则需要为 Microsoft Purview 配置至少一个帐户和一个引入专用终结点。
- 查看 DNS 要求。 如果在网络上使用自定义 DNS 服务器,则客户端必须能够将 Microsoft Purview 帐户终结点的完全限定的域名 (FQDN) 解析为专用终结点的 IP 地址。
集成运行时选项
- 如果数据源位于 Azure 中,则你可以选择以下任何运行时选项:
如果使用自承载集成运行时,则需要在部署了 Microsoft Purview 引入专用终结点的同一个或对等互连的虚拟网络中部署的 Windows 虚拟机上设置并使用自承载集成运行时。
若要扫描本地数据源,还可以在本地 Windows 计算机上或 Azure 虚拟网络中的 VM 上安装自承载集成运行时。
将专用终结点与 Microsoft Purview 配合使用时,需要允许在数据源与部署了 Microsoft Purview 专用终结点的 Azure 虚拟网络上的自承载集成运行时 VM 之间建立网络连接。
建议允许自动升级自承载集成运行时。 确保在 Azure 虚拟网络中或企业防火墙上打开所需的出站规则以允许自动升级。 有关详细信息,请参阅自承载集成运行时网络要求。
身份验证选项
确保凭据存储在 Azure 密钥保管库中,并已在 Microsoft Purview 中注册。
必须根据在 Azure 密钥保管库中创建的每个机密,在 Microsoft Purview 中创建凭据。 需要为 Microsoft Purview 的机密至少分配对 Azure 中密钥保管库资源的 get 和 list 访问权限。 否则凭据无法在 Microsoft Purview 帐户中正常工作。
当前限制
使用专用终结点进行提取时,不支持通过提取专用终结点和自承载集成运行时使用整个订阅或资源组来扫描多个 Azure 源。 但可以改为单独注册并扫描数据源。
若要了解 Microsoft Purview 专用终结点相关的限制,请参阅已知限制。
有关专用链接服务的相关限制,请参阅 Azure 专用链接限制。
专用终结点方案
单虚拟网络,单区域
在此方案中,所有 Azure 数据源、自承载集成运行时 VM 和 Microsoft Purview 专用终结点都部署在 Azure 订阅的同一虚拟网络中。
如果存在本地数据源,则会通过站点到站点 VPN 或 Azure ExpressRoute 连接来提供与部署了 Microsoft Purview 专用终结点的 Azure 虚拟网络的连接。
此体系结构主要适用于小型组织或者开发、测试和概念证明方案。
单区域,多虚拟网络
若要将 Azure 中的两个或更多虚拟网络连接在一起,可以使用虚拟网络对等互连。 对等互连虚拟网络之间的网络流量是专用的,且保留在 Azure 主干网络上。
许多客户使用中心辐射型网络体系结构在 Azure 中构建其网络基础结构,其中:
- 网络共享服务(例如网络虚拟设备、ExpressRoute/VPN 网关或 DNS 服务器)部署在中心虚拟网络中。
- 分支虚拟网络通过虚拟网络对等互连使用这些共享服务。
在中心辐射型网络体系结构中,可以为组织的数据治理团队提供包含虚拟网络(中心)的 Azure 订阅。 所有数据服务都可以位于其他几个订阅中,这些订阅通过虚拟网络对等互连或站点到站点 VPN 连接来连接到中心虚拟网络。
在中心辐射型体系结构中,可以在中心订阅和虚拟网络中部署 Microsoft Purview 和一个或多个自承载集成运行时 VM。 可以从同一区域的多个订阅注册和扫描其他虚拟网络中的数据源。
自承载集成运行时 VM 可部署在部署了帐户和引入专用终结点的同一 Azure 虚拟网络或对等虚拟网络中。
可选择在分支虚拟网络中部署另一个自承载集成运行时。
多区域,多虚拟网络
如果数据源分布在多个 Azure 区域的一个或多个 Azure 订阅中,则你可以使用此方案。
为提高性能和优化成本,强烈建议在数据源所在的每个区域中部署一个或多个自承载集成运行时 VM。
专用终结点的 DNS 配置
多个 Microsoft Purview 帐户的名称解析
如果你的组织需要使用专用终结点部署和维护多个 Microsoft Purview 帐户,建议遵循以下建议:
- 为每个 Microsoft Purview 帐户至少部署一个帐户专用终结点。
- 为每个 Microsoft Purview 帐户至少部署一组引入专用终结点。
- 在 Azure 环境中为一个 Microsoft Purview 帐户部署一个门户专用终结点。 为门户专用终结点创建一个 DNS A 记录以解析
web.purview.azure.cn
。 同一个 Azure 虚拟网络或通过 VNet 对等互连连接的虚拟网络中的所有 Purview 帐户都可以使用“门户”专用终结点。
如果多个 Microsoft Purview 帐户部署在多个订阅以及多个通过 VNet 对等互连连接的 VNet 中,则此方案也适用。 门户专用终结点主要呈现与 Microsoft Purview 治理门户相关的静态资产,因此它独立于 Microsoft Purview 帐户,只需一个门户专用终结点即可访问 Azure 环境中的所有 Microsoft Purview 帐户(如果已连接 VNet)。
注意
在将 Microsoft Purview 帐户部署到隔离分段的方案中,可能需要为每个 Microsoft Purview 帐户部署单独的门户专用终结点。
Microsoft Purview 门户是所有客户的静态内容,没有任何客户信息。 或者,如果最终用户可以启动 Internet,你可以使用公用网络(不带门户专用终结点)来启动 web.purview.azure.cn
。
选项 3:使用专用终结点和公共终结点
当数据源子集使用专用终结点,而同时你需要扫描以下任一项时,你可能会选择该选项:
- 配置了服务终结点的其他数据源
- 拥有可通过 Internet 访问的公共终结点的数据源
如果需要使用引入专用终结点扫描一些数据源,并使用公共终结点或服务终结点扫描一些数据源,则可以:
- 为 Microsoft Purview 帐户使用专用终结点。
- 在 Microsoft Purview 帐户中将“公共网络访问”设置为“允许从所有网络”。
集成运行时选项
若要扫描配置了专用终结点的 Azure 数据源,需要在部署了 Microsoft Purview 帐户和引入专用终结点的同一或对等虚拟网络中部署的 Windows 虚拟机上设置并使用自承载集成运行时。
将专用终结点与 Microsoft Purview 配合使用时,需要允许在数据源与部署了 Microsoft Purview 专用终结点的 Azure 虚拟网络上的自承载集成运行时 VM 之间建立网络连接。
若要扫描配置为允许公共终结点的 Azure 数据源,可以使用 Azure 集成运行时。
若要扫描本地数据源,还可以在本地 Windows 计算机上或 Azure 虚拟网络中的 VM 上安装自承载集成运行时。
建议允许自动升级自承载集成运行时。 确保在 Azure 虚拟网络中或企业防火墙上打开所需的出站规则以允许自动升级。 有关详细信息,请参阅自承载集成运行时网络要求。
身份验证选项
若要扫描配置为允许公共终结点的 Azure 数据源,可以根据数据源类型使用任何身份验证选项。
如果使用引入专用终结点扫描配置了专用终结点的 Azure 数据源:
不能使用 Microsoft Purview 托管标识。 根据数据源类型改用服务主体、帐户密钥或 SQL 身份验证。
确保凭据存储在 Azure 密钥保管库中,并已在 Microsoft Purview 中注册。
必须根据在 Azure 密钥保管库中创建的每个机密,在 Microsoft Purview 中创建凭据。 为 Microsoft Purview 的机密至少分配对 Azure 中密钥保管库资源的 get 和 list 访问权限。 否则凭据无法在 Microsoft Purview 帐户中正常工作。
选项 4:仅使用专用终结点进行引入
如果需要执行以下操作,可以选择此选项:
- 使用引入专用终结点扫描所有数据源。
- 必须将托管资源配置为禁用公用网络。
- 允许通过公用网络访问 Microsoft Purview 治理门户。
启用此选项:
- 为 Microsoft Purview 帐户配置引入专用终结点。
- 在 Microsoft Purview 帐户中将“公共网络访问”设置为“禁用,仅用于引入(预览)”。
集成运行时选项
遵循选项 2 的建议。
身份验证选项
遵循选项 2 的建议。
自承载集成运行时网络和代理建议
为了跨本地和 Azure 网络扫描数据源,你可能需要在 Azure VNet 或本地网络中部署和使用一个或多个自承载集成运行时虚拟机,用于任何本文档前面提到的场景。
自承载集成运行时服务可经由端口 443 通过公共或专用网络与 Microsoft Purview 进行通信。 有关详细信息,请参阅自承载集成运行时网络要求。
一个自承载集成运行时 VM 可用于扫描 Microsoft Purview 中的一个或多个数据源,但是,自承载集成运行时必须仅注册 Microsoft Purview,不能同时用于 Azure 数据工厂和 Azure Synapse。
可在一个 Microsoft Purview 帐户中注册和使用一个或多个自承载集成运行时。 建议在数据源所在的每个区域或本地网络中至少放置一个自承载集成运行时 VM。
建议为每个自承载集成运行时 VM 定义所需容量的基线,并按需缩放 VM 容量。
建议尽可能通过专用网络在自承载集成运行时 VM 与 Microsoft Purview 及其受管理资源之间设置网络连接。
如果已启用自动更新,则允许出站连接到 download.microsoft.com。
如果自承载集成运行时 VM 部署在 Azure VNet 中或在通过 ExpressRoute 或站点到站点 VPN 连接连接到 Azure 的本地网络中,则自承载集成运行时服务不需要出站 Internet 连接。 在这种情况下,扫描和元数据引入过程可以通过专用网络完成。
自承载集成运行时可直接或通过代理服务器与 Microsoft Purview 及其受管理资源进行通信。 如果自承载集成运行时 VM 位于 Azure VNet 内部,或者通过 ExpressRoute 或站点到站点 VPN 连接进行连接,请避免使用代理设置。
如果需要将自承载集成运行时与代理设置一起使用,请查看支持的场景。