本页是Azure网络级数据外泄保护的按功能分类的参考体系结构。 每个部分介绍一个控件,例如标识、Unity 目录治理、工作区限制、监视和云特定的网络隔离,以及其实现指南的链接。 有关这些控件背后的概念和安全层优先级,请参阅 数据外泄保护。
- 若要将整套控制措施作为单一捆绑包进行部署,请使用 Azure Databricks 安全参考架构 Terraform 模块,该模块可端到端实现 隔离环境 架构。 请参阅 Azure 安全参考体系结构 Terraform 模块。
- 若要单独配置控件,请使用以下指南。
标识和访问控制
基于标识的控件是防止数据外泄的第一道防线。 如果没有强身份验证和受信任的访问,弱标识会破坏网络级控制。
使用 SSO 进行统一登录
使用统一登录在 Azure Databricks 帐户中的所有工作区中应用单一登录(SSO)。 这可确保用户通过企业标识提供者进行身份验证,而不是使用个人帐户或非 SSO 方法。
在标识提供者中启用多重身份验证(MFA),以便进行额外的验证层。
请参阅 身份验证和访问控制。
自动标识管理
实现 SCIM 预配以自动执行用户生命周期管理。 这可确保前员工自动取消预配,在离开后无法访问工作区。
网络访问控制
限制对受信任网络的工作区和帐户控制台访问:
- 帐户级 IP 访问列表:控制对帐户控制台的访问。 请参阅[为账户控制台配置 IP 访问列表]不可在 (../front-end/ip-access-list-account.md) 上使用。
- 工作区级 IP 访问列表:控制对单个工作区的访问。 请参阅 [为工作区配置 IP 访问列表]NOT AVAILABLE ON (../front-end/ip-access-list-workspace.md)。
- 专用连接:使用入站 专用链接 彻底取消对工作区的公共访问。 请参阅 配置入站专用链接。
数据管理控制
网络控制可防止未经授权的出口路径,但数据管理控制可确保即使是经过授权的计算资源也只能访问批准的数据目标。 无论部署哪种 网络安全体系结构 ,都应用这些控制。
标准访问控制
使用 Unity 目录特权来限制谁可以读取、写入或修改每个目录、架构、表和卷。 授予每个角色和组所需的最低权限。
权限按层级传递:对目录授予的权限适用于其内的所有架构和表。 使用此方法可以强制实施广泛的默认值,然后在较低级别对敏感数据进行窄访问。
基于属性的访问控制 (ABAC)
ABAC 基于附加到数据对象的标记(而不仅仅是对象标识)控制数据访问。 使用 ABAC 强制实施“用户只能查询标记 pii=false的表”或“欧盟组中的用户无法读取标记 region=US的表”等策略。
在已建立标记规范的大型环境中,ABAC 比逐对象授权(GRANT)具有更好的扩展性。 它也适合与行筛选器和列掩码(见下文)搭配使用。
行筛选器和列掩码
限制用户在表中看到的内容:
- 行筛选器:应用 SQL 函数,确定用户可以查询的行。 例如,对销售表进行限制,使每个区域经理只能看到其所在区域的行。
-
列掩码:应用一个 SQL 函数,该函数在返回用户之前转换列的值。 例如,为非财务用户屏蔽信用卡号
XXXX-XXXX-XXXX-1234。
行筛选器和列掩码是在查询时求值的,因此用户无法借助 SELECT * 绕过这些限制。
请参阅 行筛选器和列掩码。
Unity 目录管理限制
仅将数据访问安全对象创建限制为管理员:
- 存储凭据:仅允许管理员创建存储凭据。 为每个凭据应用最低特权云访问策略(IAM 角色、托管标识)。 请参阅管理存储凭据。
- 外部位置:仅允许管理员创建映射到云存储路径的外部位置。 请参阅管理外部位置。
- 数据库连接:仅允许管理员通过 Lakehouse 联邦创建与外部数据库的连接。 请参阅Lakehouse Federation 连接管理。
- 服务凭据:仅允许管理员为外部云服务创建服务凭据。 请参阅 “创建服务凭据”。
向用户授予使用已批准的安全对象的权限,而不是创建新安全对象。 这可以防止用户将计算指向不受信任的存储或终结点。
存储帐户策略
在存储帐户上实现防火墙或存储桶策略,以仅接受来自已批准的源目标的流量:
- 配置Azure 存储防火墙以仅允许从批准的 VNet、专用终结点或服务终结点进行访问。
- 使用托管标识,并为其分配最小权限角色。
工作区限制
工作区管理员设置通过 Azure Databricks UI 控制数据下载和导出路径。 禁用这些设置以防止用户通过工作区界面提取数据。
| 设置 | 风险缓解 |
|---|---|
| 禁用下载笔记本结果 | 用户将查询结果下载到本地计算机 |
| 禁用分卷文件下载 | 将卷文件下载到本地计算机的用户 |
| 禁用笔记本和文件导出 | 用户从工作区导出笔记本或文件 |
| 禁用 SQL 查询结果下载 | 下载 SQL 查询结果的用户 |
| 禁用 MLflow 运行项目下载 | 下载 MLflow 实验工件的用户 |
| 禁用结果表的剪贴板功能 | 用户将表格数据复制到剪贴板 |
在工作区管理控制台中,在安全设置下配置这些设置。 请参阅管理工作区。
监视和检测
预防控制可降低数据外泄的风险,但监视检测到控制失败或攻击者绕过它们时。
用于审核监视的系统表
使用 Azure Databricks 使用系统表监控成本来监控数据访问模式。 审核日志系统表参考记录了工作区事件,包括:
- 用户身份验证和访问尝试。
- 数据读取和写入操作。
- 管理配置更改。
- 凭据使用情况和外部位置访问。
为可疑活动(例如异常数据卷、从意外位置访问或尝试访问未经授权的资源)设置警报。
云原生日志集成
引入特定于云的日志以补充Azure Databricks系统表:
- 配置Azure Monitor和活动日志以捕获存储访问事件、托管标识使用情况和网络流日志。
将云原生日志与Azure Databricks审核日志相关联,以全面了解环境中的数据移动。
Azure 体系结构
Azure体系结构使用 VNet 注入、专用链接和Azure 防火墙来创建围绕Azure Databricks工作负荷的安全网络外围。
先决条件
| 组件 | 详细信息 |
|---|---|
| 虚拟网络 | Azure虚拟网络(VNet 注入)中使用 |
| Subnets | 三个子网:主机(公共)、容器(专用)和专用终结点子网。 |
| 防火墙或 NVA | 用于出口检查和策略强制执行的网络虚拟设备(Azure 防火墙或第三方)。 |
| 专用 DNS 区域 | 虚拟网络内专用终结点的 DNS 解析。 |
| Azure 密钥保管库 | 存储用于 DBFS、托管磁盘和托管服务加密的客户管理密钥。 |
| 防火墙允许列表 | Azure Databricks 所需终结点。 请参阅 “配置域名防火墙规则”。 |
体系结构组件
该体系结构有四个主要领域:网络隔离、专用连接、出口控制和无服务器安全性。
网络隔离
使用Deploy Azure Databricks in your Azure virtual network (VNet injection),在虚拟网络中部署已启用安全群集连接 (SCC) 的 Azure Databricks。 可以采用具有集中式防火墙的中心辐射型拓扑进行部署,也可以采用无中心的独立(岛状)网络拓扑进行部署。 此配置:
- 消除群集节点上的公共 IP 地址。
- 每个工作区都需要专用子网对(一个专用子网对,一个公共子网对)。
- 通过专用终结点路由控制平面流量。
Tip
不要在 DBFS 根存储中存储应用程序数据。 禁用对现有 Azure Databricks 工作区中 DBFS 根目录和挂载的访问,并改用 什么是 Unity Catalog 卷?。
专用连接
为专用子网中的客户管理的Azure存储帐户设置专用链接终结点:
- 所有数据访问都通过Azure网络主干进行。
- 可以在 Azure Databricks VNet 或对等互连 VNet 中部署专用终结点。
- 作为客户管理的存储帐户的替代方法,请使用 配置Azure虚拟网络服务终结点策略从经典计算进行存储访问(无需额外费用)。
注释
专用终结点和服务终结点策略仅适用于客户管理的Azure存储帐户。 由 Azure Databricks 托管的资源(工件存储、日志存储和 Event Hubs)不能部署在专用终结点之后。
为用户访问和浏览器身份验证配置 Configure Inbound 专用链接。
出口控件
在中心虚拟网络中部署Azure 防火墙(或第三方网络虚拟设备):
- 应用程序规则:定义可通过防火墙访问的 FQDN(控制平面、Web 应用,以及在未配置经典计算平面 专用链接 时的 SCC 中继)。
- 网络规则:为无法使用 FQDN 的终结点定义 IP 地址、端口和协议。
-
用户定义的路由(UDR):使用默认路由(
0.0.0.0/0)通过防火墙路由来自Azure Databricks子网的非本地流量。
注释
使用服务终结点策略时,Azure Databricks 服务存储账户(工件、日志、系统表)无需防火墙网络规则。
服务终结点可绕过防火墙访问 Azure Databricks 系统存储,从而降低数据传输成本并避免节流。 仅制品存储一项,每个集群节点的下载量就可高达 11 GB。
无服务器安全
配置 什么是无服务器出口控制? 以控制出口流量。 使用 无服务器计算平面网络在无服务器计算和Azure存储帐户(ADLS Gen2)之间建立专用连接。
优化策略:
- 在安全要求允许的情况下,请使用服务终结点,而不是 专用链接。
- 配置服务终结点策略以绕过Azure Databricks系统存储的防火墙(降低数据传输成本并避免限制)。
- 根据实际需求合理调整 Azure 防火墙 或 NVA 的吞吐量规模。
- 通过防火墙设备监视数据传输成本。
有关详细指导,请参阅 了解 Databricks 网络成本 。
另见
| 资源 | Description |
|---|---|
| 网络参考体系结构 | 网络安全体系结构(托管的、强化的、隔离的)。 |
| 安全性和符合性 | 网络以外的安全性和符合性控制。 |