yugabyte-db 的最佳安全实践是什么?
What are the best security practices of yugabyte-db?
据了解,yugabyte-db 保护来自 https://docs.yugabyte.com/v1.1/secure/tls-encryption/ and https://docs.yugabyte.com/latest/secure/encryption-at-rest/ 的传输数据和静态数据。
观察到:
a) 显示的最大密钥长度选项是 48 位。是否可以配置为使用 128 位密钥或 256 位密钥或更高位?如何将其对性能的影响降到最低?
b) 是否所有平板电脑都使用旧密钥解密并在密钥轮换时使用新密钥加密,或者如何完成?旋转密钥时如何影响性能?如何将其对性能的影响降到最低?
c) 如何将 yugabyte-db 配置为使用来自 HSM 的密钥,而不是将来自磁盘的密钥用于在线数据和静态数据?
a) 这是不正确的,它可以配置为使用 128/256 位密钥。应该尽快更新文档以反映这一点。
b) 通常当 rotate_universe_key_in_memory
yb-admin 命令是 运行 时,只有新写入的数据文件使用轮换到的 universe 密钥(无论是否启用静态加密)第一次,或任何后续的密钥轮换)。所有以前存在的数据文件仍然引用在写入文件时作为当前密钥的 universe 密钥,并且文件继续使用它们各自的 universe 密钥,直到它们被刷新或压缩,此时新写入的文件将使用当前的 Universe 密钥。所以不,每次发生密钥轮换时都不会发生平板电脑范围的解密,所有数据文件使用当前 universe 密钥所需的时间取决于给定 universe 上的写入工作量。
c) 现在,Yugabyte yb-admin 命令仅支持从磁盘上的文件内容中读取宇宙密钥以进行静态加密。重要的是要注意,密钥只需要在磁盘上保留到使用 add_universe_key_to_all_masters
加载到内存中为止。在此之后,密钥文件可以从主节点移动并远程存储在其他地方。只有在所有主机同时关闭时,才需要此密钥文件将密钥重新上传到内存中。 Yugabyte 平台 (https://www.yugabyte.com/platform/) 为使用 CMK 生成全域密钥的 AWS KMS 提供集成支持(您可以使用 AWS CloudHSM 作为 AWS KMS CMK 的 HSM 自定义密钥存储)以及集成支持Equinix 智能钥匙;所以这可能适合您的用例?
据了解,yugabyte-db 保护来自 https://docs.yugabyte.com/v1.1/secure/tls-encryption/ and https://docs.yugabyte.com/latest/secure/encryption-at-rest/ 的传输数据和静态数据。
观察到:
a) 显示的最大密钥长度选项是 48 位。是否可以配置为使用 128 位密钥或 256 位密钥或更高位?如何将其对性能的影响降到最低?
b) 是否所有平板电脑都使用旧密钥解密并在密钥轮换时使用新密钥加密,或者如何完成?旋转密钥时如何影响性能?如何将其对性能的影响降到最低?
c) 如何将 yugabyte-db 配置为使用来自 HSM 的密钥,而不是将来自磁盘的密钥用于在线数据和静态数据?
a) 这是不正确的,它可以配置为使用 128/256 位密钥。应该尽快更新文档以反映这一点。
b) 通常当 rotate_universe_key_in_memory
yb-admin 命令是 运行 时,只有新写入的数据文件使用轮换到的 universe 密钥(无论是否启用静态加密)第一次,或任何后续的密钥轮换)。所有以前存在的数据文件仍然引用在写入文件时作为当前密钥的 universe 密钥,并且文件继续使用它们各自的 universe 密钥,直到它们被刷新或压缩,此时新写入的文件将使用当前的 Universe 密钥。所以不,每次发生密钥轮换时都不会发生平板电脑范围的解密,所有数据文件使用当前 universe 密钥所需的时间取决于给定 universe 上的写入工作量。
c) 现在,Yugabyte yb-admin 命令仅支持从磁盘上的文件内容中读取宇宙密钥以进行静态加密。重要的是要注意,密钥只需要在磁盘上保留到使用 add_universe_key_to_all_masters
加载到内存中为止。在此之后,密钥文件可以从主节点移动并远程存储在其他地方。只有在所有主机同时关闭时,才需要此密钥文件将密钥重新上传到内存中。 Yugabyte 平台 (https://www.yugabyte.com/platform/) 为使用 CMK 生成全域密钥的 AWS KMS 提供集成支持(您可以使用 AWS CloudHSM 作为 AWS KMS CMK 的 HSM 自定义密钥存储)以及集成支持Equinix 智能钥匙;所以这可能适合您的用例?