AWS Redshift 数据库加密

Posted

技术标签:

【中文标题】AWS Redshift 数据库加密【英文标题】:AWS Redshift database encryption 【发布时间】:2019-11-12 08:06:15 【问题描述】:

是否可以对单个 Redshift 内的不同数据库使用不同的加密?

换句话说,我的意思是,如果(理论上)从 AWS 数据中心窃取硬盘驱动器,黑客将无法使用相同的密钥解密该驱动器上的所有数据库?

【问题讨论】:

【参考方案1】:

看来:

磁盘上的每个数据块都使用不同的加密密钥进行加密 然后使用数据库加密密钥对这些加密密钥进行加密 该密钥使用集群加密密钥加密 该密钥在 AWS KMS 中使用加密密钥专门用于 Redshift 在您的账户中加密(而不是 EC2 等)

见:Amazon Redshift Database Encryption

【讨论】:

感谢您的回答。现在,我正在为每个数据库的租户或每个架构的租户之间选择多租户解决方案。看起来每个模式的租户对于静态数据的安全性较低,因为所有数据密钥都将使用相同的数据库加密密钥而不是不同的数据库加密密钥进行加密,就像租户每个数据库的方法一样? 每个磁盘块都使用不同的密钥进行加密。每个块包含 1MB 的数据。因此,一个 100MB 的数据库将涉及至少 100 个不同的加密密钥。然后,这 100 多个加密密钥在存储之前使用数据库加密密钥进行加密。 谢谢。所以换句话说 - 每个架构的租户与每个数据库的租户相比,安全性较低,但总体上仍然非常安全,也可以用作多租户解决方案? 从“静态加密”的角度来看,存储在 Redshift 中的 任何东西 都同样安全。忽略静态加密,“每个模式的租户”不如“每个数据库的租户”安全,因为配置不当的GRANT 权限可能会将数据暴露给错误的租户。这适用于任何数据库,而不仅仅是 Redshift。当然,您永远不应该让您的客户直接访问数据库,因此这实际上取决于您的应用程序是否正确编码以管理安全性。

以上是关于AWS Redshift 数据库加密的主要内容,如果未能解决你的问题,请参考以下文章

使用现有数据在Redshift群集上启用加密

使用AWS KMS加密本地数据

AWS 数据加密知识点

AWS KMS 加密 - 数据大小限制

解密 Amazon Redshift CSV 转储

连接开启传输加密(TLS)的AWS Redis