腾讯云弹性伸缩的访问管理
文档简介:
概述:
访问管理(Cloud Access Management,CAM)可以帮助您安全、便捷地管理对腾讯云服务和资源的访问。您可以使用 CAM 创建子用户、用户组和角色,并通过策略控制其访问范围。CAM 支持用户和角色 SSO 能力,您可以根据具体管理场景针对性设置企业内用户和腾讯云的互通能力。
概述
访问管理(Cloud Access Management,CAM)可以帮助您安全、便捷地管理对腾讯云服务和资源的访问。您可以使用 CAM 创建子用户、用户组和角色,并通过策略控制其访问范围。CAM 支持用户和角色 SSO 能力,您可以根据具体管理场景针对性设置企业内用户和腾讯云的互通能力。
您最初创建的腾讯云主账号,拥有整个账号全部腾讯云服务和资源的完全访问权限,建议您保护好主账号的凭证信息,日常使用子用户或角色进行访问,并开启多因素校验和定时轮换密钥。
当您在使用 CAM 时,可以将策略与一个用户或一组用户关联起来进行权限控制。
弹性伸缩已接入 CAM,您可以使用 CAM 对弹性伸缩服务的相关资源进行权限控制。
相关概念
CAM 用户
CAM 用户 是您在腾讯云中创建的一个实体,每一个 CAM 用户仅同一个腾讯云账户关联。您注册的腾讯云账号身份为主账号,您可以通过 用户管理 来创建拥有不同权限的子账号进行协作。子账号的类型分为 子用户、协作者 以及 消息接收人。
策略
策略 是用于定义和描述一条或多条权限的语法规范,腾讯云的策略类型分为预设策略和自定义策略。
预设策略: 由腾讯云创建和管理的策略,是被用户高频使用的一些常见权限集合,如资源全读写权限等。预设策略操作对象范围广,操作粒度粗,且为系统预设,不可被用户编辑。
自定义策略:由用户创建的策略,允许进行细粒度的权限划分。例如,为子账号关联一条使用策略,使其有权管理弹性伸缩的伸缩组,而无权管理云数据库实例。
资源
资源(resource) 是策略的元素,描述一个或多个操作对象,例如弹性伸缩的启动配置和伸缩组。
弹性伸缩预设策略介绍
预设策略名
|
授权范围描述
|
QcloudASFullAccess
|
关联后,获得弹性伸缩(AS)全读写访问权限
|
QcloudASReadOnlyAccess
|
关联后,获得弹性伸缩(AS)只读访问权限
|
可授权的资源类型
资源级权限指的是能够指定用户对哪些资源具有执行操作的能力。例如,您可以授权用户拥有广州地域伸缩组的操作权限。
在访问管理中对弹性伸缩可授权的资源类型如下:
资源类型
|
授权策略中的资源描述方法
|
启动配置相关
|
qcs::as:$region:$account:launch-configuration/*
|
伸缩组相关
|
qcs::as:$region:$account:auto-scaling-group/*
|
下表列出弹性伸缩支持资源级权限操作的各个 API,以及每个操作支持的资源路径。
设置资源路径时,您需要将 $region、$account、$LaunchConfigurationId、$AutoScalingGroupId 等变量参数修改为您实际的参数信息,同时您也可以在路径中使用 * 通配符。
访问管理策略中的 region、action、account、resource 等相关概念请参见 资源描述方式。
API 接口:action
|
资源路径:resource
|
CreateLaunchConfiguration
|
qcs::as:$region:$account:launch-configuration/*
|
DeleteLaunchConfiguration
|
qcs::as:$region:$account:launch-configuration/$LaunchConfigurationId
|
DescribeLaunchConfigurations
|
qcs::as:$region:$account:launch-configuration/*
qcs::as:$region:$account:launch-configuration/$LaunchConfigurationId
|
ModifyLaunchConfigurationAttributes
|
qcs::as:$region:$account:launch-configuration/$LaunchConfigurationId
|
UpgradeLaunchConfiguration
|
qcs::as:$region:$account:launch-configuration/$LaunchConfigurationId
|
CreateAutoScalingGroup
|
qcs::as:$region:$account:auto-scaling-group/*
|
CreateAutoScalingGroupFromInstance
|
qcs::as:$region:$account:auto-scaling-group/*
|
DeleteAutoScalingGroup
|
qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId
|
DescribeAutoScalingGroups
|
qcs::as:$region:$account:auto-scaling-group/*
qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId
|
ModifyAutoScalingGroup
|
qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId
|
ModifyLoadBalancers
|
qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId
|
EnableAutoScalingGroup
|
qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId
|
DisableAutoScalingGroup
|
qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId
|
ModifyDesiredCapacity
|
qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId
|
DescribeAutoScalingActivities
|
qcs::as:$region:$account:auto-scaling-group/*
qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId
|
AttachInstances
|
qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId
|
DetachInstances
|
qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId
|
RemoveInstances
|
qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId
|
DescribeAutoScalingInstances
|
qcs::as:$region:$account:auto-scaling-group/*
qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId
|
SetInstancesProtection
|
qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId
|
CreateScheduledAction
|
qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId
|
DeleteScheduledAction
|
qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId
|
DescribeScheduledActions
|
qcs::as:$region:$account:auto-scaling-group/*
qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId
|
ModifyScheduledAction
|
qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId
|
CreateScalingPolicy
|
qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId
|
DeleteScalingPolicy
|
qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId
|
DescribeScalingPolicies
|
qcs::as:$region:$account:auto-scaling-group/*
qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId
|
ModifyScalingPolicy
|
qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId
|
ExecuteScalingPolicy
|
qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId
|
CreateNotificationConfiguration
|
qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId
|
DeleteNotificationConfiguration
|
qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId
|
DescribeNotificationConfigurations
|
qcs::as:$region:$account:auto-scaling-group/*
qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId
|
ModifyNotificationConfiguration
|
qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId
|
CreateLifecycleHook
|
qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId
|
DeleteLifecycleHook
|
qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId
|
DescribeLifecycleHooks
|
qcs::as:$region:$account:auto-scaling-group/*
qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId
|
UpgradeLifecycleHook
|
qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId
|
CompleteLifecycleAction
|
qcs::as:$region:$account:auto-scaling-group/$AutoScalingGroupId
|
DescribeAccountLimits
|
*
|
弹性伸缩访问管理策略示例
下面以具体的示例展示如何通过访问管理对弹性伸缩资源进行权限控制:
创建策略:广州地域允许对所有伸缩组的访问权限。
# 其中$account需要替换成账号信息{"version": "2.0","statement": [{"effect": "allow","action": ["name/as:*"],"resource": ["qcs::as:ap-guangzhou:$account:auto-scaling-group/*"]}]}
创建策略:广州地域禁止对某个伸缩组的访问权限。
# 其中$account需要替换成账号信息, $AutoScalingGroupId 需要替换成相应的AutoScalingGroupId{"version": "2.0","statement": [{"effect": "deny","action": ["name/as:*"],"resource": ["qcs::as:ap-guangzhou:$account:auto-scaling-group/$AutoScalingGroupId"]}]}
创建策略:对全部地域所有读接口拥有访问权限。
{"version": "2.0","statement": [{"effect": "allow","action": ["name/as:Describe*"],"resource": ["*"]}]}