需要给RDS授予访问密钥管理服务KMS(Key Management Service)的权限,才能正常使用云盘加密功能,您可以在访问控制RAM控制台上进行授权。
前提条件
需要使用阿里云主账号。创建权限策略AliyunRDSInstanceEncryptionRolePolicy
- 登录访问控制的权限策略管理页面。
- 单击创建权限策略。说明 权限策略是用语法结构描述的一组权限的集合,可以精确地描述被授权的资源、操作以及授权条件。
- 单击脚本编辑页签,将如下脚本复制到代码编辑框中。
{ "Version": "1", "Statement": [ { "Action": [ "kms:List*", "kms:DescribeKey", "kms:TagResource", "kms:UntagResource" ], "Resource": [ "acs:kms:*:*:*" ], "Effect": "Allow" }, { "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": [ "acs:kms:*:*:*" ], "Effect": "Allow", "Condition": { "StringEqualsIgnoreCase": { "kms:tag/acs:rds:instance-encryption": "true" } } } ] }
- 单击继续编辑基本信息,在文本框中填写如下信息:
参数 说明 名称 填写策略名称。请填写AliyunRDSInstanceEncryptionRolePolicy。 备注 填写备注。例如:用于RDS访问KMS。 - 单击确定。
创建RAM角色AliyunRDSInstanceEncryptionDefaultRole并授权
创建完策略之后,需要将策略授权给RAM角色,RDS就可以访问KMS资源。
- 登录访问控制的RAM角色管理页面。
- 单击创建角色。
- 选择阿里云服务,单击下一步。
- 设置如下参数,并单击完成。
参数 说明 角色类型 选择普通服务角色。 角色名称 填写AliyunRDSInstanceEncryptionDefaultRole。 备注 添加备注信息。 选择受信服务 选择云数据库。 - 在角色创建成功的提示下单击为角色授权。
- 在添加权限页面搜索之前创建的权限AliyunRDSInstanceEncryptionRolePolicy并单击该名称,使之移动到右侧已选择框内。
- 单击确定。
查看角色ARN(可选)
ARN(Alibaba Cloud Resource Name)是RAM角色的全局资源描述符,即描述该RAM角色具有哪些资源的访问权限。调用API进行云盘加密时需要传入ARN,用于指定一个具有KMS访问权限的RAM角色,具体操作,请参见CreateDBInstance。
- 登录访问控制的RAM角色管理页面。
- 找到目标角色,单击角色名称。
- 在右上角查看ARN。