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

本文涉及的产品
RDS SQL Server Serverless,2-4RCU 50GB 3个月
推荐场景:
云数据库 RDS SQL Server,基础系列 2核4GB
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
简介: 在阿里云中,如何为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 MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
10月前
|
安全 关系型数据库 数据管理
DMS产品常见问题之香港地区RDS开启安全访问代理失败如何解决
DMS(数据管理服务,Data Management Service)是阿里云提供的一种数据库管理和维护工具,它支持数据的查询、编辑、分析及安全管控;本汇总集中了DMS产品在实际使用中用户常遇到的问题及其相应的解答,目的是为使用者提供快速参考,帮助他们有效地解决在数据管理过程中所面临的挑战。
|
8月前
|
安全 数据管理 关系型数据库
数据管理DMS使用问题之使用香港地区的RDS,如何通过代理进行访问
阿里云数据管理DMS提供了全面的数据管理、数据库运维、数据安全、数据迁移与同步等功能,助力企业高效、安全地进行数据库管理和运维工作。以下是DMS产品使用合集的详细介绍。
数据管理DMS使用问题之使用香港地区的RDS,如何通过代理进行访问
|
8月前
|
关系型数据库 Serverless 数据库
函数计算产品使用问题之如何访问阿里云的RDS
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
8月前
|
数据可视化 安全 API
资源访问管理(RAM)
资源访问管理(RAM)
339 2
|
9月前
|
运维 关系型数据库 Serverless
Serverless 应用引擎产品使用合集之如何授权某个函数计算服务给某个RAM子账号访问
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
|
9月前
|
NoSQL 关系型数据库 Serverless
Serverless 应用引擎产品使用合集之连接RDS、Redis等数据库时,是否需要通过安全组来控制访问权限
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
|
10月前
|
运维 监控 关系型数据库
Serverless 应用引擎产品使用之在阿里云函数计算(FC)中,要访问另一个账号的rds配置rds的白名单如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
113 0
|
10月前
|
安全 关系型数据库 应用服务中间件
连接rds设置网络权限
连接阿里云RDS需关注:1) 设置白名单,允许特定IP访问;2) 选择合适网络类型,如VPC或经典网络;3) 确保VPC内路由与安全组规则正确;4) 同VPC内可使用内网地址连接;5) 可启用SSL/TLS加密增强安全性。记得遵循最小权限原则,确保数据库安全。不同服务商操作可能有差异,但基本流程相似。
361 9
|
10月前
|
安全 关系型数据库 网络安全
rds公共网络/公网访问
RDS公网访问允许用户通过互联网连接云数据库,但默认关闭以确保安全。需手动开启并配置公网IP或域名,使用时需注意安全风险,如设置严格防火墙规则、启用SSL/TLS加密和强化身份验证。公网访问可能产生带宽、IP及附加服务费用。内网访问是更安全、经济的选择,除非特定场景(如使用Linked Server功能)需公网访问。在实施时,应权衡安全、成本和需求。
403 1
|
27天前
|
关系型数据库 数据库 数据安全/隐私保护
云数据库实战:基于阿里云RDS的Python应用开发与优化
在互联网时代,数据驱动的应用已成为企业竞争力的核心。阿里云RDS为开发者提供稳定高效的数据库托管服务,支持多种数据库引擎,具备自动化管理、高可用性和弹性扩展等优势。本文通过Python应用案例,从零开始搭建基于阿里云RDS的数据库应用,详细演示连接、CRUD操作及性能优化与安全管理实践,帮助读者快速上手并提升应用性能。

相关产品

  • 云数据库 RDS MySQL 版
  • 云数据库 RDS