如何为RAM子账号授予单一RDS实例的访问权限?

本文涉及的产品
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
RDS AI 助手,专业版
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
简介: 在阿里云中,如何为RAM子账号进行精准授权,授予单一RDS实例的访问权限?这篇文档帮到你

问题背景

由于公司权限控制,需要对阿里云RDS MySQL实例的进行资源隔离,即单一RAM子账号只能访问特定的资源,下面我们举一个例子来看看如何处理。



操作流程

1、主账号下有两个RDS实例A和B,我们选其中实例A来赋予RAM子账号独立访问操作的权限

image.png


2、首先我们在RAM访问控制中创建RAM子账号。

image.png

image.png


3、创建自定义权限策略

image.png

image.png

{
  "Statement": [
    {
      "Action": "rds:Describe*",
      "Effect": "Allow",
      "Resource": "acs:rds:*:*:dbinstance/rm-bxxxxxxxxo"
    },
    {
      "Action": "rds:DescribeDBInstances",
      "Effect": "Allow",
      "Resource": "*"
    }
  ],
  "Version": "1"
}

RDS支持policy在resource中指定资源实例ID写法。

image.png


4、授权操作,确认后点击【完成】即可。具体详见为RAM账户授权

image.png

image.png

授权成功。


5、使用对应的RAM账号登录验证:

image.png


6、此时,控制台还是能看到实例B。

image.png


7、访问实例A正常的,由于没有实例B的授权,因此点进实例页面会发现报错:“该实例不存在,请确认实例是否存在或已过期”,这个是因为没有授权导致。

image.png

image.png

这个问题的原因是由于单个实例授权在控制台现在不支持,实例列表页请求本身不带资源ID鉴权不会通过,现在只能支持到acs:rds:*:主账号uid:dbinstance/*这种策略,单一api调用是可以用实例级别的策略。


那能不能进一步优化,隐藏掉未指定的实例?接着往下看

1、首先我们使用主账号回到RAM访问控制>用户页面为RAM账户绑定标签注意:Tag的key和value不要用大写字母。image.png

image.png


2、因为在【资源管理/标签】对应的标签就自动创建了,我们再给实例绑定该标签。

image.png

image.png


3、验证下,按照标签检索

image.png


4、回到前面自定义的授权页面,变更授权

image.png

image.png

参考:权限策略由哪些元素组成_访问控制-阿里云帮助中心


5、变更后:

image.png

文本格式:

{
    "Statement": [
        {
            "Action": "rds:*",
            "Effect": "Allow",
            "Resource": "acs:rds:*:*:*",
            "Condition": {
                "StringEquals": {
                    "rds:ResourceTag/chytag": "test"
                }
            }
        },
        {
            "Action": "rds:DescribeTag*",
            "Effect": "Allow",
            "Resource": "*"
        }
    ],
    "Version": "1"
}

更详细授权如下:

{
    "Statement": [
        {
            "Action": "rds:Describe*",
            "Effect": "Allow",
            "Resource": "acs:rds:*:*:*",
            "Condition": {
                "StringEquals": {
                    "rds:ResourceTag/chytag": "test"
                }
            }
        },
        {
            "Action": "rds:DescribeTag*",
            "Effect": "Allow",
            "Resource": "*"
        },
        {
            "Action": [
                "rds:DescribeSQLCollectorVersion",
                "rds:DescribeVSwitches"
            ],
            "Effect": "Allow",
            "Resource": "acs:rds:*:*:*"
        },
        {
            "Action": [
                "hdm:Get*",
                "hdm:Describe*",
                "hdm:Query*"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "actiontrail:Lookup*",
                "actiontrail:Describe*",
                "actiontrail:Get*",
                "actiontrail:Check*",
                "actiontrail:List*"
            ],
            "Resource": "*",
            "Effect": "Allow"
        }
    ],
    "Version": "1"
}


6、RAM子账号登录验证:RDS实例列表控制台

image.png


7、通过Tag标签检索

image.png

成功获取实例,且具有该RDS实例的所有权限

image.png



两种方案各有利弊吧,都有不太妥当的地方,期待阿里云继续优化吧。

相关实践学习
自建数据库迁移到云数据库
本场景将引导您将网站的自建数据库平滑迁移至云数据库RDS。通过使用RDS,您可以获得稳定、可靠和安全的企业级数据库服务,可以更加专注于发展核心业务,无需过多担心数据库的管理和维护。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
目录
相关文章
|
机器学习/深度学习 API 数据安全/隐私保护
视觉智能平台常见问题之一直提示ram没有权限但是我在角色中已经有添加相应的权限如何解决
视觉智能平台是利用机器学习和图像处理技术,提供图像识别、视频分析等智能视觉服务的平台;本合集针对该平台在使用中遇到的常见问题进行了收集和解答,以帮助开发者和企业用户在整合和部署视觉智能解决方案时,能够更快地定位问题并找到有效的解决策略。
208 0
|
9月前
|
机器人 API
使用OOS实现RAM权限审批流授权及自动化撤销授权的概念验证
本方案通过阿里云OOS与ROS联动,实现RAM账户授权自动化。用户申请后由审批人确认,系统自动授予指定策略,并在预设时间后自动撤销权限,提升安全性与管理效率。
|
SQL DataWorks 数据管理
DataWorks操作报错合集之在查找支持实例错误的时候提示:无法承担用户的角色,请检查RAM角色配置,该怎么办
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
运维 关系型数据库 Serverless
Serverless 应用引擎产品使用合集之如何授权某个函数计算服务给某个RAM子账号访问
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
|
NoSQL 关系型数据库 Serverless
Serverless 应用引擎产品使用合集之连接RDS、Redis等数据库时,是否需要通过安全组来控制访问权限
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
|
机器学习/深度学习 API 数据安全/隐私保护
视觉智能平台常见问题之一直提示ram没有权限如何解决
视觉智能平台是利用机器学习和图像处理技术,提供图像识别、视频分析等智能视觉服务的平台;本合集针对该平台在使用中遇到的常见问题进行了收集和解答,以帮助开发者和企业用户在整合和部署视觉智能解决方案时,能够更快地定位问题并找到有效的解决策略。
365 1
|
域名解析 网络协议 数据安全/隐私保护
DNS解析问题之授权RAM子账号管理指定域名如何解决
DNS解析是指将人类可读的域名转换成机器可读的IP地址的过程,它是互联网访问中不可或缺的一环;本合集将介绍DNS解析的机制、类型和相关问题的解决策略,以确保域名解析的准确性和高效性。
897 1
|
数据库 数据安全/隐私保护
在阿里云中,访问控制(Resource Access Management,简称RAM)是权限管理系统,主要用于控制账号在阿里云中
在阿里云中,访问控制(Resource Access Management,简称RAM)是权限管理系统,主要用于控制账号在阿里云中
1148 3
|
7月前
|
缓存 关系型数据库 BI
使用MYSQL Report分析数据库性能(下)
使用MYSQL Report分析数据库性能
486 158
|
7月前
|
关系型数据库 MySQL 数据库
自建数据库如何迁移至RDS MySQL实例
数据库迁移是一项复杂且耗时的工程,需考虑数据安全、完整性及业务中断影响。使用阿里云数据传输服务DTS,可快速、平滑完成迁移任务,将应用停机时间降至分钟级。您还可通过全量备份自建数据库并恢复至RDS MySQL实例,实现间接迁移上云。

相关产品

  • 云数据库 RDS MySQL 版
  • 云数据库 RDS
  • 推荐镜像

    更多