一、操作场景
点此 查看详细操作场景。
二、策略内容
按照资源 ID 授权,最终实现上述预期结果时,对应的策略内容如下:
{ "version": "2.0", "statement": [ { "effect": "allow", "action": [ "cvm:*" ], "resource": [ "qcs::cvm::uin/12345678:instance/ins-duglsqg0",//12345678为主账号UIN "qcs::cvm::uin/12345678:image/img-eb30mz89" ] }, { "effect": "allow", "action": [ "vpc:DescribeVpcEx", "vpc:DescribeNetworkInterfaces", "cvm:DescribeCbsStorages" ], "resource": [ "*" ] } ]}
三、步骤1:使用管理员账号创建策略并授权
1. 使用管理员账号登录访问管理控制台,在 策略 页面,按照策略生成器创建自定义策略(请参见 通过策略生成器创建自定义策略)。
·效果:允许
·服务:云服务器 cvm
·操作:全部操作
·资源:特定资源 – 添加自定义资源六段式
·分别填写:资源前缀:instance 和资源 ID:ins-duglsqg0,以及资源前缀:image 和资源 ID:img-eb30mz89。
注意:说明:
2. 单击下一步,指定策略的名称为 Cvm_Resource_ins_duglsqg0,并将策略授予子账号 CvmDev_zhangsan。
3. 单击完成,完成授权。
四、步骤2:使用子账号登录验证权限
1. 使用子用户登录 云服务器控制台,进入实例列表页面。此时 CVM 页面会提示缺少 VPC 产品 DescribeVpcEx 以及对应资源的权限。
2. 根据页面提示内容,联系管理员账号在策略中添加对应授权。
五、步骤3:使用管理员账号调整策略内容
1. 使用主账号在 VPC 支持 CAM 的接口 清单中,找到 DescribeVpcEx 确定接口为操作级的接口。
2. 在访问管理控制台的 策略 页面,找到策略 Cvm_Resource_ins_duglsqg0,单击策略名进入策略详情。
3. 在策略语法中单击编辑,按照操作级接口的授权书写形式在策略详情中添加接口授权。
·添加之前:
·添加之后:
4. 添加之后重复 步骤2,使用子账号 CvmDev_zhangsan 再次验证,发现仍有异常,缺少 VPC 下 DescribeNetworkInterfaces 以及对应资源的访问权限,请查看 私有网络支持 CAM 的接口 确定 DescribeNetworkInterfaces 为操作级的接口。
5. 按照 步骤3 继续调整策略内容,直至系统没有报错。
最终策略的内容如下:
注意:说明:
注意:在书写 CAM 策略时,在需要操作具体资源时,资源级的接口授权需要和操作级分开书写,多个操作级接口可以书写在一起。
六、步骤4:验证结果
使用子用户 CvmDev_zhangsan 再次验证,达到预期效果。
至此,子用户 CvmDev_zhangsan 可以对实例进行开关机、重启、更名、重置密码等操作。