数据传输迁移角色授权

更新时间:
复制 MD 格式

本文为您介绍如何为主账号和 RAM 用户授予访问数据传输的权限。

背景信息

数据传输的账号登录体系与阿里云保持一致,统一采用 RAM 主账号或 RAM 用户登录的方式。详情请参见 访问控制 RAM 官方文档。

  • 阿里云账号(即主账号)是阿里云资源的归属及使用计量计费的基本主体,负责生成本企业组织下的 RAM 用户,并对 RAM 用户进行管理、授权等操作。

  • RAM 用户由主账号在 RAM 系统中创建并管理,本身不拥有资源,也没有独立的计量计费,这些账号由所属主账号统一控制和付费。

主账号进行数据传输迁移角色授权

数据传输需要具备云资源访问权限。当登录账号为主账号但未授权时,需要进入阿里云控制台进行数据传输迁移角色授权。

  1. 使用主账号登录 OceanBase 管理控制台 。

  2. 展开左侧导航栏 数据传输,进入任一导航页面。

  3. 根据授权提醒单击 前往 RAM 角色授权。

  4. 确认页面内容无误后,单击 同意授权,完成授权操作。

  5. 返回并刷新数据传输页面。

RAM 用户进行数据传输迁移角色授权

数据传输需要具备云资源访问权限。当登录账号为 RAM 用户但未授权时,需要进入阿里云控制台进行数据传输迁移角色授权。

  1. RAM 用户登录 OceanBase 管理控制台 。

  2. 展开左侧导航栏 数据传输,进入任一导航页面。

  3. 根据授权提醒单击 前往 RAM 角色授权。

    您也可以单击 切换主账号登录,使用数据传输服务。

  4. 确认页面内容无误后,单击 同意授权,完成授权操作。

  5. 返回并刷新数据传输页面。

如果 RAM 用户授权失败,您可以进行以下三种方式的操作:

  • 切换至主账号登录控制台。

  • 主账号授予当前 RAM 用户 RAM 授权权限。

    1. 主账号登录 RAM 控制台。

    2. 在左侧导航栏,单击 身份管理 > 用户。

    3. 在 用户 页面,单击目标 RAM 用户操作列的 添加权限。

    4. 在 添加权限 对话框的 系统策略 页签,搜索并选中 AliyunRAMFullAccess,添加在右侧 已选择 列表中。

      当前 RAM 用户添加 RAM 授权权限后,再次进行数据传输迁移角色授权操作即可。

      RAM 授权

    5. 单击 确定。

    6. 单击 完成。

  • 切换至其它具备数据传输迁移角色授权权限的 RAM 用户登录控制台。

(可选)切换主账号登录控制台

如果您已使用 RAM 用户登录控制台,请通过下述操作切换主账号。您也可以跳过该操作,直接使用主账号登录控制台。

  1. RAM 用户登录 OceanBase 管理控制台 。

  2. 在页面右上角的个人中心单击 退出登录,退出当前 RAM 用户。

    RAM 用户

  3. 在登录页面,单击 主账号登录。

    主账号登录

(可选)主账号授予 RAM 用户数据传输迁移角色授权权限

RAM 用户需要具备数据传输迁移角色 AliyunOceanbaseMigrationServiceRolePolicy,才可以正常访问数据传输。如果 RAM 用户未具备该角色,则需要主账号先登录 RAM 控制台,手动给数据传输迁移角色添加权限。

  1. 主账号登录 RAM 控制台。

  2. 创建数据传输迁移角色。

    1. 在左侧导航栏,单击 身份管理 > 角色。

    2. 在 角色 页面,单击 创建角色。

    3. 在 创建角色 对话框,选择可信实体类型为 阿里云账号,单击 下一步。

    4. 在 配置角色 页面,配置各项参数。

      参数

      描述

      角色名称

      输入 AliyunOceanbaseMigrationServiceRole。

      备注(可选)

      创建角色的备注信息。

      选择信任的云账号

      • 当前云账号:当您允许当前阿里云账号下的 RAM 用户扮演该 RAM 角色时,您可以选择 当前云账号。

      • 其他云账号:当您允许其它阿里云账号下的 RAM 用户扮演该 RAM 角色时,您可以选择 其他云账号,然后输入其他阿里云账号 ID。该项主要针对跨阿里云账号的资源授权访问场景。

    5. 单击 完成。

  3. 新建数据传输获取 RDS 信息的权限策略。

    1. 返回 角色 页面,单击新建角色后的 添加权限。

    2. 在 添加权限 对话框,单击 选择权限 下的 新建权限策略。

      权限策略

    3. 在 创建权限策略 页面,单击 脚本编辑,输入下述权限策略语句。

      {
          "Statement": [
              {
                  "Action": [
                      "rds:DescribeDBInstances",
                      "rds:DescribeDBInstanceNetInfo",
                      "rds:DescribeDBInstanceIPArrayList",
                      "rds:ModifySecurityIps"
                  ],
                  "Resource": "*",
                  "Effect": "Allow"
              },
              {
                  "Action": [
                      "vpc:DescribeVpcs",
                      "vpc:DescribeVSwitches"
                  ],
                  "Resource": "*",
                  "Effect": "Allow"
              },
              {
                  "Action": [
                      "polardb:DescribeDBClusterIPArrayList",
                      "polardb:DescribeDBClusterNetInfo",
                      "polardb:DescribeDBClusters",
                      "polardb:DescribeRegions",
                      "polardb:DescribeDBClusterEndpoints",
                      "polardb:DescribeDBClusterAccessWhitelist",
                      "polardb:ModifyDBClusterAccessWhitelist"
                  ],
                  "Resource": "*",
                  "Effect": "Allow"
              },
              {
                  "Action": [
                      "dg:GetUserGatewayInstances",
                      "dg:GetUserGateways",
                      "dg:GetUserDatabases",
                      "dg:ListDatabaseAccessPoint",
                      "dg:DescribeRegions",
                      "dg:FindUserGatewayById"
                  ],
                  "Resource": "*",
                  "Effect": "Allow"
              },
              {
                  "Action": [
                      "adb:DescribeDBClusters",
                      "adb:DescribeDBClusterAttribute",
                      "adb:DescribeAutoRenewAttribute",
                      "adb:DescribeAvailableResource",
                      "adb:DescribeDBResourcePool",
                      "adb:DescribeElasticDailyPlan",
                      "adb:DescribeElasticPlan",
                      "adb:DescribeTables",
                      "adb:DescribeAllDataSource",
                      "adb:DescribeSchemas",
                      "adb:DescribeColumns",
                      "adb:DescribeTablePartitionDiagnose",
                      "adb:DescribeRegions",
                      "adb:DescribeDBClusterNetInfo",
                      "adb:DescribeDBClusterAccessWhiteList",
                      "adb:ModifyDBClusterAccessWhiteList"
                  ],
                  "Resource": "*",
                  "Effect": "Allow"
              },
              {
                  "Action": [
                      "dms:ListUsers",
                      "dms:ListUserTenants",
                      "dms:ListColumns",
                      "dms:ListIndexes",
                      "dms:ListDatabases",
                      "dms:ListLogicDatabases",
                      "dms:ListTables",
                      "dms:ListLogicTables",
                      "dms:ListInstances",
                      "dms:GetUserActiveTenant",
                      "dms:GetTableDBTopology",
                      "dms:SearchDatabase",
                      "dms:SearchTable"
                  ],
                  "Resource": "*",
                  "Effect": "Allow"
              },
              {
                  "Action": [
                      "cms:DescribeContactList",
                      "cms:DescribeMonitorGroups",
                      "cms:DescribeMonitorGroupInstances",
                      "cms:DescribeCustomMetricList",
                      "cms:DescribeSystemEventMetaList",
                      "cms:DescribeSystemEventCount",
                      "cms:DescribeSystemEventAttribute",
                      "cms:DescribeSystemEventHistogram",
                      "cms:DescribeCustomEventCount",
                      "cms:DescribeCustomEventAttribute",
                      "cms:DescribeCustomEventHistogram",
                      "cms:CreateMonitorGroup",
                      "cms:PutCustomEvent",
                      "cms:PutCustomMetric",
                      "cms:PutContactGroup",
                      "cms:PutCustomMetricRule"
                  ],
                  "Resource": "*",
                  "Effect": "Allow"
              },
              {
                  "Action": [
                      "alikafka:ListInstance",
                      "alikafka:UpdateInstance",
                      "alikafka:ReadOnly"
                  ],
                  "Resource": "*",
                  "Effect": "Allow"
              },
              {
                  "Effect": "Allow",
                  "Action": [
                      "ecs:DescribeVSwitches",
                      "ecs:DescribeSecurityGroups",
                      "ecs:CreateSecurityGroup",
                      "ecs:DeleteSecurityGroup",
                      "ecs:CreateNetworkInterface",
                      "ecs:DescribeNetworkInterfaces",
                      "ecs:CreateNetworkInterfacePermission",
                      "ecs:DescribeNetworkInterfacePermissions",
                      "ecs:DeleteNetworkInterface"
                  ],
                  "Resource": "*"
              }
          ],
          "Version": "1"
      }
    4. 单击 下一步:编辑基本信息。

    5. 输入权限策略的 名称 后,单击 确定。

  4. 为 RAM 角色添加权限。

    1. 返回 角色 页面,单击新建角色后的 添加权限。

    2. 在 添加权限 对话框,单击 选择权限 下的 自定义策略。

    3. 搜索并选中新建的权限策略,即可添加在右侧 已选择 列表中。

    4. 单击 确定。