数据安全与加密
本文介绍用于帮助保护数据的数据安全配置。
有关保护对数据的访问的信息,请参阅Unity Catalog 的数据治理。
Azure Databricks 提供加密功能来帮助保护你的数据。 并非所有定价层都提供所有安全功能。 下表包含这些功能的概述,以及它们如何与定价计划保持一致。
功能 | 定价层 |
---|---|
使用客户管理的密钥进行加密 | 高级 |
加密群集工作器节点之间的流量 | 高级 |
针对 DBFS 根的双重加密 | 高级 |
加密查询、查询历史记录和查询结果 | 高级 |
Azure Databricks 支持添加客户管理的密钥来帮助保护和控制对数据的访问。 Azure Databricks 支持 Azure 密钥保管库和 Azure 密钥保管库所托管硬件安全模块 (HSM) 中客户管理的密钥。 为不同类型的数据提供了三项客户管理的密钥功能:
用于托管磁盘的客户管理的密钥:计算平面中的 Azure Databricks 计算工作负载将临时数据存储在 Azure 托管磁盘上。 默认情况下,将使用 Microsoft 托管的密钥通过服务器端加密对托管磁盘上存储的数据进行静态加密。 你可为 Azure Databricks 工作区配置自己的密钥用于托管磁盘加密。 请参阅 Azure 托管磁盘的客户管理的密钥。
用于托管服务的客户管理的密钥:Azure Databricks 控制平面中的托管服务数据是静态加密的。 可以为托管服务添加客户管理的密钥,以帮助保护和控制对以下加密数据的访问:
- 存储在控制平面中的笔记本源文件。
- 存储在控制平面中的笔记本的笔记本结果。
- 机密管理器 API 存储的机密。
- Databricks SQL 查询和查询历史记录。
- 用于设置 Git 与 Databricks Git 文件夹集成的个人访问令牌或其他凭据。
请参阅托管服务的客户管理的密钥。
DBFS 根的客户管理的密钥:默认情况下,存储帐户使用 Microsoft 管理的密钥进行加密。 你可以配置自己的密钥来加密工作区存储帐户中的所有数据。 有关详细信息,请参阅 DBFS 根的客户管理的密钥。
有关 Azure Databricks 中有哪些客户管理的密钥功能可保护不同类型数据的更多详细信息,请参阅用于加密的客户管理的密钥。
Databricks 文件系统 (DBFS) 是一个装载到 Azure Databricks 工作区的分布式文件系统,可以在 Azure Databricks 群集上使用。 DBFS 在 Azure Databricks 工作区的受管理资源组中实现为存储帐户。 DBFS 中的默认位置称为 DBFS 根。
Azure 存储自动加密存储帐户中的所有数据,包括 DBFS 根存储。 你可以选择在 Azure 存储基础结构级别启用加密。 启用基础结构加密后,将对存储帐户中的数据进行两次加密,分别在服务级别和基础架构级别使用两种不同的加密算法和两个不同的密钥。 若要详细了解如何使用基础结构加密部署工作区,请参阅为 DBFS 根配置双重加密。
可以使用 Azure 密钥保管库中你自己的密钥来加密存储在 Azure Databricks 控制平面中的 Databricks SQL 查询和查询历史记录。 有关更多详细信息,请参阅加密查询、查询历史和查询结果
用户查询和转换通常会通过加密通道发送到群集。 但是,在默认情况下,群集中工作器节点之间交换的数据是未加密的。 如果你的环境要求始终对数据进行加密,无论是静态加密还是传输中加密,都可以创建一个初始化脚本,该脚本将群集配置为通过 TLS 1.2 连接使用 AES 128 位加密来加密工作器节点之间的流量。 有关详细信息,请参阅加密群集工作器节点之间的流量。
Azure Databricks 工作区管理员可以管理其工作区的安全设置,例如下载笔记本和强制实施用户隔离群集访问模式的功能。 有关详细信息,请参阅管理工作区。