授权权限策略
注意:说明:
注意:子账号的创建、用户组管理、角色管理等通用操作流程,由访问管理(CAM)统一提供,这篇仅作简要说明并提供跳转链接。
一、背景信息
企业开通云数据库 MongoDB 服务后,希望团队成员操作云上资源,但不愿透露主账号密钥。此时可创建子账号并授予受限权限:相关费用统一计入主账号,且权限可随时调整或撤销。
二、操作步骤
| 步骤 | 操作内容 | 说明 |
| 步骤 1 | 创建子账号 | 在 CAM 控制台创建,或通过 API 调用 AddUser 接口添加。详见 新建子用户。 |
| 步骤 2(可选) | 准备权限策略 | 系统默认策略不满足需求时,创建自定义策略。详见 权限策略语法。 |
| 步骤 3 | 授予权限策略 | 在 CAM 控制台将策略关联到子账号。详见 授权管理。 |
三、云数据库 MongoDB 授权建议
·只读查看场景:关联系统策略 QcloudMongoDBReadOnlyAccess,仅允许查看实例信息和监控数据。
·运维管理场景:关联系统策略 QcloudMongoDBFullAccess,授予完整管理权限。
·精细化管控场景:使用自定义策略,将权限限定到指定实例(resource 指定 instance/$instanceId),并可结合来源 IP 等条件进一步收敛。
四、背景信息
企业 A 希望企业 B 拥有其云数据库 MongoDB 的部分业务权限(如查看监控、实例读写、慢查询分析等),但不希望共享主账号或子账号凭证。此时可通过角色实现跨账号授权:企业 A 创建角色并授权给企业 B,企业 B 的子账号通过扮演该角色访问企业 A 的资源。
五、操作步骤
跨账号授权依赖 CAM 的角色与角色扮演(AssumeRole)能力,整体流程如下:
1. 企业 A 创建角色:在 CAM 控制台新建角色,载体选择云账户中的其他主账号并填入企业 B 的主账号,为角色关联所需的云数据库 MongoDB 权限策略。详见 创建角色。
2. 企业 B 授予扮演角色的权限:企业 B 为其子账号创建并关联一条 sts:AssumeRole 策略,允许其扮演企业 A 创建的角色。
3. 企业 B 使用角色访问资源:企业 B 的子账号登录控制台后,通过切换角色输入企业 A 的主账号及角色名称,即可以角色身份访问企业 A 的云数据库 MongoDB 资源。
步骤2中的 sts:AssumeRole 策略示例如下(将 uin/12345 和 DevOpsRole 替换为实际值):
{ "version": "2.0", "statement": [ { "effect": "allow", "action": ["name/sts:AssumeRole"], "resource": ["qcs::cam::uin/12345:roleName/DevOpsRole"] } ]}
六、更多参考
·访问管理概述
·权限策略语法
·角色概述