云服务器ECS资源绑定标签后,您需要对RAM用户授予某种要求的标签鉴权策略,RAM用户才可以通过执行云助手命令控制带有某种标签的ECS实例,并对该ECS实例进行控制访问。本文介绍如何通过标签控制云助手命令的执行。
前提条件
-
已创建RAM用户。如未创建RAM用户,具体操作,请参见创建RAM用户。
-
已创建云助手命令。如未创建云助手命令,具体操作,请参见创建命令。
背景信息
-
标签由一组键值对组成,可以用于标记ECS实例,实现资源的分类管理。更多信息,请参见标签概述。
-
访问控制RAM可基于权限策略,管理用户身份,控制云资源的访问和操作权限。您可以从地域、ECS实例、云助手命令等维度设计自定义策略,并授权给RAM用户使用,从而灵活控制RAM用户使用云助手命令的权限。更多信息,请参见RAM用户概览和权限策略概览。
-
标签和RAM结合,将标签作为权限策略的匹配条件,可以实现对云资源的精细化管理。
基于标签控制RAM用户权限(即标签鉴权)的逻辑如下:
应用场景说明
本文以如下应用场景为示例,说明如何使用标签鉴权控制云助手命令。
-
RAM用户只能将命令执行到带有标签(例如test:tony)的ECS实例上。
-
RAM用户只能将文件传输到带有标签(例如test:tony)的ECS实例上。
-
RAM用户可以查询标签、实例或云助手命令和执行结果。
操作步骤
本步骤将使用阿里云账号(主账号)新建自定义策略UseTagAccessResources
为例,将自定义策略UseTagAccessResources
授权给RAM用户后,RAM用户只能将命令执行或者文件上传到带有标签test:tony
的ECS实例上。
-
创建带有标签的ECS实例。
本步骤以创建标签为
test:tony
的ECS实例为例。具体操作,请参见创建带特定标签的资源。 -
使用阿里云账号(主账号)登录RAM控制台。
-
创建自定义策略
UseTagAccessResources
。具体操作,请参见创建自定义权限策略。
您可以在权限策略(Condition)中为ECS资源设置多个标签条件来限制操作权限,支持的标签鉴权条件如下所示:
标签鉴权条件
说明
acs:RequestTag
限制在请求中必须传入特定的标签。
如果API请求中没有标签参数,则不能使用
acs:RequestTag
,否则会导致鉴权失败。acs:ResourceTag
限制指定的资源必须包含特定的标签。
如果API请求中没有资源ID参数,则不能使用
acs:ResourceTag
,否则会导致鉴权失败。{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "ecs:InvokeCommand", "ecs:RunCommand", "ecs:StopInvocation", "ecs:SendFile" ], "Resource": "acs:ecs:*:*:instance/*", "Condition": { "StringEquals": { "acs:ResourceTag/test": "tony" } } }, { "Effect": "Allow", "Action": [ "ecs:InvokeCommand", "ecs:RunCommand", "ecs:StopInvocation", "ecs:SendFile" ], "Resource": "acs:ecs:*:*:command/*" }, { "Effect": "Allow", "Action": [ "ecs:DescribeTag*", "ecs:DescribeInstance*", "ecs:DescribeCommands", "ecs:CreateCommand", "ecs:DeleteCommand", "ecs:ModifyCommand", "ecs:DescribeInvocationResults", "ecs:DescribeSendFileResults", "ecs:DescribeInstances", "ecs:DescribeCloudAssistantStatus", "ecs:DescribeInvocations", "ecs:DescribeResourceByTags", "ecs:DescribeTagKeys", "ecs:DescribeTags", "ecs:ListTagResources", "ecs:DescribeManagedInstances" ], "Resource": "*" }, { "Effect": "Allow", "Action": "oos:ListSecretParameters", "Resource": "*" } ] }
以上策略可以实现如下权限控制:
-
允许在绑定
test:tony
标签的ECS实例上执行云助手命令或者发送远程文件,具体权限策略如下所示:{ "Effect": "Allow", "Action": [ "ecs:InvokeCommand", "ecs:RunCommand", "ecs:StopInvocation", "ecs:SendFile" ], "Resource": "acs:ecs:*:*:instance/*", "Condition": { "StringEquals": { "acs:ResourceTag/test": "tony" } } }, { "Effect": "Allow", "Action": [ "ecs:InvokeCommand", "ecs:RunCommand", "ecs:StopInvocation", "ecs:SendFile" ], "Resource": "acs:ecs:*:*:command/*" }
-
允许查询标签、实例以及云助手等资源,具体权限策略如下所示:
{ "Effect": "Allow", "Action": [ "ecs:DescribeTag*", "ecs:DescribeInstance*", "ecs:DescribeCommands", "ecs:CreateCommand", "ecs:DeleteCommand", "ecs:ModifyCommand", "ecs:DescribeInvocationResults", "ecs:DescribeSendFileResults", "ecs:DescribeInstances", "ecs:DescribeCloudAssistantStatus", "ecs:DescribeInvocations", "ecs:DescribeResourceByTags", "ecs:DescribeTagKeys", "ecs:DescribeTags", "ecs:ListTagResources", "ecs:DescribeManagedInstances" ], "Resource": "*" }, { "Effect": "Allow", "Action": "oos:ListSecretParameters", "Resource": "*" }
-
-
将自定义权限策略
UseTagAccessResources
授予您希望控制访问的RAM用户。具体操作,请参见为RAM角色授权。
-
验证权限策略是否生效。
登录ECS管理控制台后,对待验证的实例执行以下操作:
说明
对实例执行云助手命令或者发送远程文件的同时,已经同步进行了查询标签、实例以及云助手资源等操作。
-
对不同标签的ECS实例执行云助手命令
在ECS云助手页面中的命令列表页签下,选择已创建好的云助手命令(以命令ID为
c-hz02jt1ncrf****
为例),对不同标签的ECS实例执行云助手命令。具体操作,请参见执行命令。说明
如果命令列表页签下还没有创建好的云助手命令,您也可以创建云助手命令后再进行后续操作。具体操作,请参见创建命令。
-
对不同标签的ECS实例发送远程文件
在ECS云助手页面中右上角位置,单击发送文件,对不同标签的ECS实例发送远程文件。具体操作,请参见上传本地文件到ECS实例。
如果权限策略已生效,上述操作的执行结果详情,请参见执行结果。如果权限策略未生效,请参见常见问题进行排查。
-
执行结果
-
在ECS实例中执行云助手命令
-
ECS实例已绑定
test:tony
标签,则执行云助手命令时显示执行成功。 -
ECS实例未绑定
test:tony
标签,则执行云助手命令时显示执行失败。
-
-
发送远程文件到ECS实例中
-
ECS实例已绑定
test:tony
标签,则发送远程文件时显示执行成功。 -
ECS实例未绑定
test:tony
标签,则发送远程文件时显示执行失败。
-
常见问题
如果权限策略控制功能未生效怎么办?
如果权限控制功能未生效,请检查授权的RAM用户权限是否已经对Action中的以下几个参数设置了Allow操作。如果该参数已设置了Allow操作,请您将该权限策略从RAM用户权限中移除。
-
ecs:InvokeCommand
-
ecs:RunCommand
-
ecs:StopInvocation
-
ecs:SendFile
例如,如果自定义权限策略中存在如下所示的策略,请您将该权限策略从RAM用户权限中移除。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ecs:InvokeCommand",
"ecs:RunCommand",
"ecs:StopInvocation",
"ecs:SendFile"
],
"Resource": "*"
}
]
}
腾讯云1折,限时活动,即将结束: 马上收藏
同尘科技为腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利。同意关联立享优惠
转转请注明出处:https://www.yunxiaoer.com/153741.html