此博文显示了如何使用 Amazon S3 中的示例数据集设置跨账户 Amazon Redshift COPY 和 Spectrum 查询的逐步演练。示例数据集使用 AWS KMS 托管的密钥 (SSE-KMS) 进行静态加密。
关于 AWS Key Management Service (AWS KMS)
使用 AWS Key Management Service (AWS KMS),您可以对保护您的静态数据所用的加密密钥进行集中控制。您可以创建、导入、轮换、禁用、删除、定义使用策略,并审计加密您的数据所用的加密密钥的使用。AWS KMS 使用经过 FIPS 140-2 验证的加密模块保护您的主密钥的保密性和完整性。
AWS KMS 可与大多数 AWS 服务无缝集成。此集成意味着,您可以轻松使用客户主密钥 (CMK) 来控制对您存储在这些服务内的数据的加密。决定对 Amazon Redshift 等服务中的数据进行加密时,您可以选择使用 Amazon Redshift 在 KMS 中自动创建的 AWS 托管 CMK。您可以跟踪密钥的使用情况,但其管理由服务代表您进行。有些情况下,您可能需要直接控制 CMK 的生命周期或者想要允许其他账户使用它。在这些情况下,您可以创建并管理您自己的 CMK,Amazon Redshift 等 AWS 服务可以代表您使用它们。这些客户托管 CMK 可使您全面控制访问权限,以决定哪些人可以使用该密钥及其在何种条件下使用该密钥。AWS KMS 可与 AWS CloudTrail 集成,后者是提供用户、角色或 AWS 服务在 AWS KMS 中执行的操作记录的服务。
关于 Amazon Redshift 和 Redshift Spectrum
Amazon Redshift 是 AWS 上的一项 PB 级完全托管型数据仓库服务。它使用分布式大规模并行处理 (MPP)、水平扩展以满足使用要求的无共享架构。
Amazon Redshift Spectrum 是 Amazon Redshift 的一个特性,它将 Amazon Redshift 的分析能力扩展到数据仓库的本地磁盘中所存储的数据之外。换言之,Amazon Redshift Spectrum 可使您将 Amazon Redshift 的相同 ANSI SQL 语法用于 Amazon S3 数据湖中存储的数据。您可以使用外部表格执行此操作,无需先将数据提取到 Amazon Redshift 中。常用模式为,运行跨越 Amazon Redshift 本地存储的经常访问“热”数据和经济高效地存储在 Amazon S3 中的“暖/冷”数据的查询。该模式通过启用计算和存储的独立扩展满足上述模式需求,以此分离计算和存储。这意味着,您必须为未使用的计算容量付款,只需添加更多存储。更为重要的是,此方法可在数据湖与 Amazon Redshift 之间实现无缝互操作性。
Amazon Redshift COPY 命令支持以下 Amazon S3 加密类型:
使用 Amazon S3 托管的密钥 (SSE-S3) 进行的服务器端加密
使用 AWS KMS 托管的密钥 (SSE-KMS) 进行的服务器端加密
使用客户端的对称主密钥进行的客户端加密
Amazon Redshift COPY 命令不支持以下 Amazon S3 加密类型:
使用客户提供的密钥 (SSE-C) 进行的服务器端加密
使用 AWS KMS 托管的客户主密钥进行的客户端加密
使用客户提供的非对称主密钥进行的客户端加密
本文转载自 AWS 技术博客。
评论