注意

本文档适用于 Ceph 开发版本。

Encryption

Luminous 版本新增。

Ceph对象网关支持上传对象的服务器端加密,并提供3种密钥管理选项。服务器端加密意味着数据以未加密的形式通过HTTP发送,而Ceph对象网关以加密形式将数据存储在Ceph存储集群中。

Note

服务器端加密请求必须通过安全的HTTPS连接发送,以避免以明文形式发送秘密。如果使用SSL终止代理,rgw trust forwarded https必须启用

Note

服务器端加密密钥必须是 256 位长并 base64 编码。

客户提供的密钥

在这种模式下,客户端在读取或写入加密数据的每个请求中传递一个加密密钥。管理这些密钥并记住用于加密每个对象的是客户端的责任。

这在S3中根据亚马逊SSE-C规范实现。

由于所有密钥管理都由客户端处理,因此无需特殊的Ceph配置来支持此加密模式。

密钥管理服务

在这种模式下,管理员将密钥存储在安全的密钥管理服务中。然后,Ceph对象网关按需检索这些密钥,以服务加密或解密数据的请求。

这在S3中根据亚马逊SSE-KMS规范实现。

原则上,任何密钥管理服务都可以使用。目前集成了Barbican, Vault, and KMIP

请参阅OpenStack Barbican 集成, HashiCorp Vault Integration,并KMIP 集成.

SSE-S3

这使得密钥管理对用户不可见。它们仍然存储在Vault中,但它们由Ceph自动创建和删除,并根据需要检索以服务加密或解密数据的请求。

这在S3中根据亚马逊SSE-S3规范实现。

原则上,任何密钥管理服务都可以使用。目前仅集成了Vault

请参阅HashiCorp Vault Integration.

桶加密API

桶加密API支持使用Amazon S3管理的密钥(SSE-S3)或AWS KMS客户主密钥(SSE-KMS)进行服务器端加密。

请参阅PutBucketEncryption, GetBucketEncryption, DeleteBucketEncryption

自动加密(仅用于测试)

A rgw crypt default encryption key可以在ceph.conf中设置以强制加密所有未指定加密模式的对象。

配置期望一个base64编码的256位密钥。例如:

rgw crypt default encryption key = 4YSmvJtBv0aZ7geVgAsdpRnLBEwWSWlMIGnRS8a9TSA=

重要

此模式仅用于诊断目的!ceph配置文件不是存储加密密钥的安全方法。以这种方式意外暴露的密钥应被视为已泄露。

由 Ceph 基金会带给您

Ceph 文档是一个社区资源,由非盈利的 Ceph 基金会资助和托管Ceph Foundation. 如果您想支持这一点和我们的其他工作,请考虑加入现在加入.