4.2. 加密加载


默认情况下,所有 RBD API 都会像未加密的 RBD 镜像一样对待加密的 RBD 镜像。您可以在镜像的任意位置读取或写入原始数据。在镜像中写入原始数据可能会使加密格式的完整性风险。例如,原始数据可能会覆盖位于镜像开头的加密元数据。要安全地对加密的输入/输出(I/O)或维护操作对加密的 RBD 镜像执行,必须在打开镜像后立即应用额外的加密负载操作。

加密负载操作要求您指定加密格式和密码短语,用于解锁镜像本身的加密密钥及其每个明确格式化的镜像。已打开的 RBD 镜像的所有 I/O 都是加密或解密克隆的 RBD 镜像,这包括父镜像的 IO。加密密钥由 RBD 客户端保存在内存中,直到镜像关闭为止。

注意

在 RBD 镜像中载入加密后,就无法应用其他加密加载或格式操作。此外,使用打开的镜像上下文检索 RBD 镜像大小和父级重叠的 API 调用可分别返回有效的镜像大小和有效的父重叠。当 RBD 镜像通过 rbd-nbd 将 RBD 镜像映射为块设备时,会自动载入加密。

注意

用于检索镜像大小的 API 调用和使用打开的镜像上下文返回有效的镜像大小和有效的父重叠。

注意

如果加密镜像的克隆被明确格式化,则克隆的镜像的扁平化或缩小需要透明的,因为父数据必须根据克隆的镜像格式重加密,因为它是从父快照复制的。如果在发出 flatten 操作前没有载入加密,则之前在克隆的镜像中访问的父数据可能会变得不可读取。

注意

如果明确格式化了加密镜像的克隆,则缩减克隆的镜像的操作是透明的。这是因为,在克隆的镜像(如包含快照或克隆的镜像)与与对象大小不一致的大小相同时,会涉及从父快照复制一些数据的操作,类似于扁平化。如果在发出缩小操作前没有载入加密,则之前在克隆的镜像中访问的父数据可能变得不可读取。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat