亚马逊AWS官方博客

DMS 服务支持加密数据库迁移实例

在用户把自己的数据向AWS云上迁移的过程中,数据库迁移是一个很重要的方面, Database Migration Service(DMS)服务可以帮助客户方便快捷的解决这个问题,该服务可以把本地环境或者其他云的数据库,迁移到AWS云上。是应用迁移的重要手段。但是在数据的迁移过程中如何确保客户的数据的安全也非常重要。AWS中国的北京区域和宁夏区域KMS服务已经上线并完成了和DMS服务的集成。在使用KDMS迁移数据库的时候,可以使用KMS对复制实例进行加密,用户可以选择DMS的默认密钥或者自己建立的密钥,从而确保用户对数据的掌控权。本文会介绍通过KMS建立自己的迁移专属密钥,并使用这个Key,在DMS迁移数据库过程中进行加密。

首先,通过KMS服务,建立自己的KMS密钥。

设置Tag之后,选择授权给其他账户,这些账户就可以使用这个Key去加密DMS的复制实例了:

最终我们获得了如下的Key的ARN:

用 KMS 自定义密钥的密钥管理员或密钥用户的身份添加IAM 账户。这样做可确保将必需的 KMS 权限授予 IAM 用户账户。除了向 IAM 用户账户授予使用 AWS DMS 的 IAM 权限之外,还需执行此操作。

如果您不希望添加 IAM 用户账户作为自定义 KMS 密钥的密钥管理员或密钥用户,则除了必须向 IAM 用户账户授予使用 AWS DMS 的 IAM 权限以外,还需授予以下附加权限。

之后在配置DMS的复制实例时,配置好用来执行数据迁移的EC2实例的参数之,再在“Advanced security and network configuration”选项中,在“kms master key”的地方选择刚才建立的dmskey(根据自己建立的key的情况选择)(DMS的使用细节本次不做详细讨论):

注意IAM账户需要设置其如下的policy:kms:ListAliases 和 kms:DescribeKey 权限授予用于迁移的 IAM 用户账户。

使用KMS的密钥或者客户自建密钥,可以很快速方便的对迁移中国的数据进行加密,节省了客户构建加密功能的时间和成本。这也是云端托管的密钥管理服务KMS的最大特点。KMS目前还在持续和更多的服务集成,请大家保持关注。

本篇作者

韩旭明

亚马逊 AWS 合作伙伴解决方案架构师。历任惠普,埃森哲等公司,为中国石油,国家电网等客户提供服务,十八年工作经历中,在众多项目中担任解决方案架构师、咨询经理等职务,为客户提供云计算咨询、架构设计、实施,IT运维管理等,并在云计算的架构,安全,与运维管理有丰富经验。