云服务器ECS资源绑定标签后,您可以使用标签为资源做分类并控制访问。本文以ECS实例为例,介绍如何为RAM用户授权特定的策略,使该RAM用户能够通过标签控制ECS实例的访问。
前提条件
已使用阿里云账号创建一个RAM用户,详情请参见创建RAM用户。
背景信息
标签是云资源的标识,可以帮助您从不同的维度对具有相同特征的云资源进行分类、搜索和聚合,使资源管理更加容易。每个云资源均支持绑定多个标签。支持标签的云服务和资源类型,请参见支持标签的云服务。
阿里云的用户权限是基于策略为管理主体的,您可以根据不同用户的职责配置RAM策略。在策略中,您可以定义多个标签,然后将一个或多个策略授权给RAM用户或用户组。如果要控制RAM用户可以访问哪些资源,您可以创建自定义策略并使用标签来实现访问控制。
默认情况下,资源列表将展示本地域中所有的资源,如果您希望为RAM用户设置查看资源的范围,您可以通过创建自定义策略,利用标签控制RAM用户对资源的访问。
步骤一:创建自定义策略并为RAM用户授权
本步骤将使用阿里云账号创建一个自定义策略UseTagAccessRes(规定了RAM用户需要指定标签owner:zhangsan
和environment:production
后方可访问ECS资源),并将自定义策略UseTagAccessRes授权给RAM用户userTest。
使用阿里云账号登录RAM控制台。
创建自定义策略UseTagAccessRes。
自定义策略内容如下所示。具体操作,请参见创建自定义权限策略。
{ "Statement": [ { "Effect": "Allow", "Action": "ecs:*", "Resource": "*", "Condition": { "StringEquals": { "acs:RequestTag/owner": "zhangsan", "acs:RequestTag/environment": "production" } } }, { "Action": [ "ecs:DescribeTagKeys", "ecs:DescribeTags" ], "Effect": "Allow", "Resource": "*" }, { "Effect": "Deny", "Action": [ "ecs:DeleteTags", "ecs:UntagResources", "ecs:CreateTags", "ecs:TagResources" ], "Resource": "*" } ], "Version": "1" }
权限策略
内容
说明
访问带标签资源的权限
"acs:RequestTag/owner": "zhangsan"
"acs:RequestTag/environment": "production"
控制绑定该标签的资源的访问。
允许查询标签的接口权限
ecs:DescribeTagKeys
ecs:DescribeTags
ECS控制台需要支持标签查询的权限。
不允许操作标签相关的接口权限
ecs:DeleteTags
ecs:UntagResources
ecs:CreateTags
ecs:TagResources
权限中不允许出现与操作标签有关的接口,避免用户因修改标签导致没有权限。
将自定义策略授权给RAM用户userTest。
具体操作,请参见为RAM用户授权。
步骤二:为ECS实例绑定标签
本步骤将使用阿里云账号为ECS实例绑定特定标签。
如果您没有ECS实例,请先创建ECS实例。详情请参见实例创建方式介绍。
登录标签控制台。
在顶部菜单栏左上角处,选择地域。
在自定义标签页签,单击创建自定义标签。
在创建自定义标签对话框,创建
owner:zhangsan
和environment:production
标签,并绑定已有ECS实例。具体操作,请参见创建并绑定自定义标签。
步骤三:访问带标签的ECS实例
本步骤将使用RAM用户userTest(已授权自定义策略UseTagAccessRes)登录ECS控制台,访问带标签的ECS实例。
使用RAM用户登录ECS控制台。
在左侧导航栏,选择 。
在顶部菜单栏左上角处,选择地域。
在实例页面,单击搜索栏旁边的标签筛选,选择
owner:zhangsan
和environment:production
标签。查看仅绑定了
owner:zhangsan
和environment:production
标签的资源。