权限细粒度设置

本文涉及的产品
云服务器 ECS,每月免费额度280元 3个月
云服务器ECS,u1 2核4GB 1个月
简介: 云产品权限细粒度设置

1. 前言

 aliyun ram 权限系统功能强大,大部分云产品实现了极其细粒度的权限控制,但是在默认的管理管理中,往往只有读写2种权限,对产品具体设置分细粒度和访问控制权限可以实现根据应用分配不同产品的权限。
_

 应用设置与云资源以及人员的关系,对于已经上云的资源,按照应用所使用的云资源以及人员在应用的角色(owner,PE,Developer,reporter),配置相应权限;没有上云的产品,比如 vipserer,sunfire 等,先改造实现 aliyun ram 权限控制,然后配置权限。

2. ECS,SLB等云资源权限控制:

  ecs,slb,vpc 等资源,可以按照通用的 ram 配置方式配置相应读写权限,具体参考:

  1. 云服务器(ECS): 点击链接
  2. 负载均衡(SLB):点击链接
  3. 云数据库(RDS): 点击链接
  4. 日志服务(SLS): 点击链接
  5. 云监控: 点击链接
     注:云监控目前不支持细粒度资源描述,资源授权用“*”通配。

范例:

{
    "Version": "1",
    "Statement": [
        {
            "Action": [
                "ecs: AddTags",
                "ecs:DescribeInstances"
            ],
            "Resource": [
                "acs:ecs:$regionid:15619224785*****:instance/i-bp1bzvz55uz27hf*****"
            ],
            "Effect": "Allow"
        }
    ]
}

3. vipserver,switch,sentinel 等自部署产品实现RAM权限:

 RAM 权限策略与语法:点击链接
参考新部署基础设施云产品接入过程:
_

4. Diamond(ACM)

 前提条件:
按照 EDAS 的 namespace 区分环境,按照 ACM 的 Group 区分不同的应用关联,应用和 ACM 的 Group 建立对应关系。
建立 ram 子用户,设置自定义策略授予子用户。
 设置方式:

{
"Version": "1",
"Statement": [
 {
   "Action": [
     "acms:R"
   ],
   "Resource": [
           "*:*:*:*:cfg/1ca01ca0-11b0-1e01-0df1-d1010101bc10/GROUP",
           "*:*:*:*:cfg/1ca01ca0-11b0-1e01-0df1-d1010101bc10/GROUP_1"
       ],
   "Effect": "Allow"
 }
]
}

 完整控制权限:"acms:*"
  某个 namespace 下所有group,则不需要设置 /Group 段即可,不支持 group_name* 这样的通配符;
  多个 group 就列出多行;
  所有 namespaces 的某个一 group,可以使用:

 "Resource": [
           "*:*:*:*:cfg/*/DEFAULT_GROUP"
       ]

 访问控制:
  通过访问 acm 资源的账号拥有的账号的( ak/sk)权限调节。

{
    "Version": "1",
    "Statement": [
        {
            "Effect": "Deny",
            "Action": "*",
            "Resource": "*",
            "Condition": {
                "NotIpAddress": {
                    "acs:SourceIp": [
                        "172.16.0.0/30"
                        "127.0.0.1"
                    ]
                }
            }
        }
    ]
}

 综上所述,可以通过应用人员,应用与 ACM 关系关联,按照上述策略建立自定义策略,可以控制应用人员的读写ACM 配置。

5. MetaQ

 前置条件:
  建立 ram 子用户,设置自定义策略授予子用户。
 设置方式:

{
    "Version": "1",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "mq:SUB",
                "mq:OnsInstanceBaseInfo"
            ],
            "Resource": [
                "acs:mq:*:*:{instanceId}"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "mq:PUB",
                "mq:SUB"
            ],
            "Resource": [
                "acs:mq:*:*:appName*",
                "acs:mq:*:*:xapp*"
            ]
        },
        {    // 授予 Group 的权限
            "Effect":"Allow",
            "Action":[
                "mq:SUB"
            ],
            "Resource":[
                "acs:mq:*:*:{instanceId}%{groupId}"
            ]
        }
    ]
}

 对应规则参考:点击链接
 根据应用对应的 topic 和 group,设置应用权限,区分读写权限。
 Top,Group 支持通配符。
 访问控制方法与 ACM 类似。

相关实践学习
一小时快速掌握 SQL 语法
本实验带您学习SQL的基础语法,快速入门SQL。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
30天前
|
安全 开发者
自定义全局角色,实现按岗赋权
Dataphin作为企业级数据建设和治理平台,提供了丰富的产品功能,在日常使用的过程中,如何分配权限是管理员一直关心的问题。Dataphin V4.0版本支持自定义全局角色功能,帮助管理员实现按岗赋权,使管理员能够自由配置每个角色在Dataphin中的菜单和功能权限,确保平台的权限安全。
|
6月前
|
资源调度 前端开发 数据库
权限 | 前端控制权限
啊,我们经常做权限控制,控制菜单,控制按钮功能等,但是在一些特殊情况下不能够由后端来做权限控制,那就只能前端来做啦。
|
12月前
|
安全 JavaScript Java
复杂场景下的权限系统该怎么玩?ABAC权限模型帮你搞定它
复杂场景下的权限系统该怎么玩?ABAC权限模型帮你搞定它
|
数据安全/隐私保护
14-企业权限管理-角色关联权限操作
14-企业权限管理-角色关联权限操作
|
中间件 数据安全/隐私保护
使用RoleBasedAuthorization实现基于用户角色的访问权限控制
本文将介绍如何通过 [Sang.AspNetCore.RoleBasedAuthorization](https://www.nuget.org/packages/Sang.AspNetCore.RoleBasedAuthorization) 库实现 RBAC 权限管理。
141 0
使用RoleBasedAuthorization实现基于用户角色的访问权限控制
|
SQL BI 数据安全/隐私保护
RBAC、控制权限设计、权限表设计 基于角色权限控制和基于资源权限控制的区别优劣
RBAC、控制权限设计、权限表设计 基于角色权限控制和基于资源权限控制的区别优劣
509 0
RBAC、控制权限设计、权限表设计 基于角色权限控制和基于资源权限控制的区别优劣
|
安全 Java 数据管理
基于角色访问控制RBAC权限模型的动态资源访问权限管理实现
前面主要介绍了元数据管理和业务数据的处理,通常一个系统都会有多个用户,不同用户具有不同的权限,本文主要介绍基于RBAC动态权限管理在crudapi中的实现。RBAC权限模型(Role-Based Access Control)即:基于角色的权限控制。模型中有几个关键的术语: 用户:系统接口及访问的操作者 权限:能够访问某接口或者做某操作的授权资格 角色:具有一类相同操作权限的用户的总称 。 #### 用户角色权限关系 一个用户有一个或多个角色 一个角色包含多个用户 一个角色有多种权限 一个权限属于多个角色
665 0
基于角色访问控制RBAC权限模型的动态资源访问权限管理实现
|
SQL 存储 数据库
数据权限这样设计,你觉得如何?
在项目实际开发中我们不光要控制一个用户能访问哪些资源,还需要控制用户只能访问资源中的某部分数据。 控制一个用户能访问哪些资源我们有很成熟的权限管理模型即RBAC,但是控制用户只能访问某部分资源(即我们常说的数据权限)使用RBAC模型是不够的,本文我们尝试在RBAC模型的基础上融入数据权限的管理控制。
2755 1
|
API
自定义资源粒度RAM权限测试
问题: 1.资源组 和 资源策略里面的资源不是一个概念 2.测试全局的全称策略资源粒度的授权
181 0
自定义资源粒度RAM权限测试