使用 AWS SDK 通过 Kinesis 管理加密的 Aurora DAS

主要观点:

  • Amazon Aurora 的数据库活动流 (DAS)能提供安全且近实时的数据库活动流,默认用 AWS Key Management Service (KMS) 及客户管理密钥 (CMK) 加密传输数据并流入 Amazon Kinesis。
  • 读取和解释加密数据流需额外努力,本文介绍如何使用AWS 加密 SDK读取 Kinesis 中的加密 Aurora DAS 记录。
  • 处理敏感数据时安全和合规是首要任务,Aurora DAS 可实时监控数据库活动,但数据默认加密,带来访问和处理加密数据的挑战。

关键信息:

  • 加密模式:采用信封加密模型,Kinesis 流中的每条记录包含用数据密钥加密的数据库活动事件和用 KMS CMK 加密的数据密钥。
  • AWS 加密 SDK 作用:处理信封加密,与 KMS 集成进行数据密钥初始解密,管理安全解密所需的加密操作。
  • 实现步骤:设置带有数据库活动流的 Aurora,准备 AWS 加密 SDK 环境,实现解密逻辑(包含多个步骤如获取数据、提取组件、解密等),注意错误处理和性能考虑因素。

重要细节:

  • 配置方面需有特定权限的 Aurora PostgreSQL 或 MySQL 集群、客户管理 KMS 密钥及启用数据库活动流,AWS 会设置接收加密数据的 Kinesis 流。
  • 处理应用需添加 AWS 加密 SDK(创建包含aws_encryption_sdkboto3的 Lambda 层)。
  • Lambda 函数示例详细展示解密过程,包括创建密钥提供程序、解密数据密钥、解密和 decompress 事件等步骤,同时要注意 KMS 权限、加密上下文、资源 ID 等以确保成功解密,还需考虑批量大小、超时设置和内存分配等性能因素。

结论:Aurora 的数据库活动流提供强大审计能力,但默认加密带来技术挑战,利用 AWS 加密 SDK 和理解加密模型可成功解密和处理加密流,关键是先解密数据密钥再解密事件,此方法能构建利用加密数据库活动流安全优势的稳健解决方案并获取有价值的洞察。

阅读 209
0 条评论