【产品技术】加密系列:DWS服务
在DWS中,可以为集群启用数据库加密,以保护静态数据。为集群启用加密时,该集群及其快照的数据都会得到加密处理。您可以在创建集群时启用加密。加密是集群的一项可选且不可变的设置。要从未加密的集群更改为加密集群(或反之),必须从现有集群导出数据,然后在已启用数据库加密的新集群中重新导入这些数据。
仅有专业版密钥管理中的密钥才能对数据库进行加密。
哪些用户有权限使用DWS数据库加密
安全管理员(拥有“Security Administrator”权限)可以直接授权DWS访问KMS,使用加密功能。
普通用户(没有“Security Administrator”权限)使用加密功能时,根据该普通用户是否为当前区域或者项目内第一个使用加密特性的用户,作如下区分:
是,即该普通用户是当前区域或者项目内第一个使用加密功能的,需先联系安全管理员进行授权,然后再使用加密功能。
否,即区域或者项目内的其他用户已经使用过加密功能,该普通用户可以直接使用加密功能。
对于一个租户而言,同一个区域内只要安全管理员成功授权DWS访问KMS,则该区域内的普通用户都可以直接使用加密功能。
如果当前区域内存在多个项目,则每个项目下都需要安全管理员执行授权操作。
使用KMS加密DWS数据库流程
当选择KMS对DWS进行密钥管理时,加密密钥层次结构有三层。按层次结构顺序排列,这些密钥为主密钥(CMK)、集群加密密钥 (CEK)、数据库加密密钥 (DEK)。
主密钥用于给CEK加密,保存在KMS中。
CEK用于加密DEK,CEK明文保存在DWS集群内存中,密文保存在DWS服务中。
DEK用于加密数据库中的数据,DEK明文保存在DWS集群内存中,密文保存在DWS服务中。
密钥使用流程如下:
用户选择主密钥。
DWS随机生成CEK和DEK明文。
KMS使用用户所选的主密钥加密CEK明文并将加密后的CEK密文导入到DWS服务中。
DWS使用CEK明文加密DEK明文并将加密后的DEK密文保存到DWS服务中。
DWS将DEK明文传递到集群中并加载到集群内存中。
当该集群重启时,集群会自动通过API向DWS请求DEK明文,DWS将CEK、DEK密文加载到集群内存中,再调用KMS使用主密钥CMK来解密CEK,并加载到集群内存中,最后用CEK明文解密DEK,并加载到集群内存中,返回给集群。
使用KMS加密DWS数据库(控制台)
加密数据库
创建委托
加密设置,并配置对应信息。
- 点赞
- 收藏
- 关注作者
评论(0)