全部产品
存储与CDN 数据库 安全 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网
分布式关系型数据库 DRDS

资源授权

更新时间:2017-06-07 13:26:11

DRDS Open API 的一部分操作(例如创建数据库)依赖 RDS 的 Open API 接口。所以,为确保 DRDS 控制台有权限操作用户的 RDS 资源,DRDS Open API 的使用者要通过 RAM 服务给 DRDS 控制台授权 RDS 资源的访问权限。不然,调用 DRDS Open API 会出现权限不足而报错

授权的方法

方法一: 通过 DRDS 控制台进行授权(推荐)

本方式适用于可以正常登录 DRDS 控制台的用户。

操作步骤:

  1. 登录 DRDS 控制台, 依次单击资源授权>激授授权

    drds_open_api_3

  2. 在与资源访问授权对话框,单击同意授权

    drds_open_api_4

方法二: 通过调用 RAM 服务的 Open API 进行授权

适用于因特殊原因(如混合云场景)无法登录 DRDS 控制台的用户。

操作步骤:

  1. 调用 RAM 服务的 Open API,为 DRDS 实例所属的主账户创建 RAM 服务角色 AliyunDRDSDefaultRole

  2. 在 DRDS 控制台,以 AliyunDRDSDefaultRole 角色调用 RDS Open API来管理 RDS 资源。

代码示例:

使用 RAM 的 Open API Java SDK 创建服务角色, Java 代码如下所示:

  1. public static void createDrdsRole() throws ServerException, ClientException {
  2. String rolePolicyDoc = "{\"Statement\":[{\"Action\": \"sts:AssumeRole\", \"Effect\": \"Allow\",\"Principal\":{\"Service\":[\"drds.aliyuncs.com\"]}}],\"Version\": \"1\"}";
  3. String roleName = "AliyunDRDSDefaultRole";
  4. CreateRoleRequest request = new CreateRoleRequest();
  5. request.setAssumeRolePolicyDocument(rolePolicyDoc);
  6. request.setRoleName(roleName);
  7. client.getAcsResponse(request);
  8. }
本文导读目录