一、权限模型
CloudBase 权限控制基于 角色-策略 模型:
用户 → 角色 → 网关权限 + 资源权限 + 数据权限
·角色:权限的载体,将用户分配到不同角色
·网关权限:在用户尝试访问资源时的第一道防线,鉴权时间早于资源鉴权,查看网关权限控制
·资源权限:该角色可以访问哪些资源(数据模型、云函数、云存储等)
·数据权限:可以访问哪些数据(全部数据、仅自己创建的数据、特定条件数据)
二、系统角色
CloudBase 提供五种内置系统角色,满足常见的权限场景:
| 角色类型 | 说明 | 典型使用场景 |
| 管理员 | 拥有所有权限,可管理环境、成员、资源 | 项目负责人、技术主管 |
| 所有用户 | 包含所有已登录和未登录用户 | 公开内容访问控制 |
| 组织成员 | 添加到组织架构的用户 | 企业内部应用访问 |
| 注册用户 | 除组织成员外的非匿名登录用户,在用户管理中查看 | C 端应用用户(如电商应用、社交应用) |
| 匿名用户 | 使用匿名登录的访客 | 公开页面、营销落地页 |
注意:安全警告:
注意:管理员角色拥有系统最高权限(删除数据、修改配置、管理成员等),请谨慎使用。建议为日常操作创建权限受限的自定义角色,仅在必要时使用管理员账号。
三、自定义角色
当系统角色无法满足业务需求时,可以创建自定义角色以实现更精细的权限控制。
创建步骤:
1. 访问 云开发平台/身份认证/权限控制 页面
2. 单击「创建角色」
3. 设置角色标识和描述(标识用于代码中引用)
4. 配置该角色的资源访问权限
常见自定义角色示例:
| 角色标识 | 角色名称 | 适用场景 |
| content_editor | 内容编辑 | 管理文章、商品等内容数据 |
| data_analyst | 数据分析 | 查看统计数据和分析报表 |
| finance_admin | 财务管理 | 管理订单、交易等财务数据 |
| customer_support | 客服人员 | 处理用户反馈和工单 |
四、多角色权限合并规则
当用户拥有多个角色时,最终权限按以下规则合并:
·允许权限取并集:用户拥有所有角色的允许权限之和
·拒绝权限优先:任一角色的拒绝规则会覆盖其他角色的允许规则
示例:
用户同时拥有:内容编辑 + 数据分析角色权限:- 内容编辑:允许访问文章表(读、写、改)- 数据分析:允许访问订单表(仅读)最终权限:- 可以读写文章表的所有数据- 可以查看订单表的数据(仅读)
五、成员管理
将用户添加到角色,实现权限分配。
六、添加成员的两种方式
方式一:在角色中添加成员
1. 访问 云开发平台/身份认证/权限控制 页面
2. 找到目标角色,单击「配置成员」
3. 单击「添加成员」批量选择用户
4. 确认后立即生效
方式二:在组织架构中管理
1. 访问 云开发平台/身份认证/组织架构 页面
2. 创建部门和岗位结构
3. 将用户添加到对应的组织节点
4. 为用户批量关联角色
注意:说明:
注意:组织架构方式适合企业应用,可以基于部门和岗位批量管理用户权限。
七、修改用户权限
修改用户权限有两种途径:
修改角色权限
·在角色的权限配置中调整资源和数据权限
·该角色下所有用户自动继承新权限
·适合批量调整多个用户的权限
调整用户角色
·将用户从某个角色移除
·或添加用户到新角色
·适合单个用户的权限调整
注意:权限变更可能需要一定时间生效,建议用户退出重新登录,立即应用新权限。
八、权限配置
为角色配置具体的访问权限,包括资源权限、数据权限两个维度。
九、资源权限
资源权限决定角色可以访问哪些 CloudBase 资源。
配置步骤:
1. 在角色卡片中单击「配置权限」
2. 选择「添加自定义策略」
3. 选择要授权的资源类型和具体资源
支持的资源类型:
| 资源类型 | 说明 | 典型应用场景 |
| 文档型数据库 | NoSQL 数据库权限配置,文档型数据库权限说明 | 业务数据储存 |
| MySQL 数据库 | 关系型数据库权限配置,MySQL 数据库权限说明 | 复杂业务数据 |
| 云函数 | 处理后端业务逻辑,云函数权限说明 | API 调用、数据处理 |
| 云存储 | 文件存储,云存储权限管理 | 图片、视频、文档上传 |
| 微搭应用 / 数据模型 / APIs / 工作台 | 可在权限控制页面直接进行管理, 前往云开发平台/身份认证/权限控制,进入权限策略配置窗口,如下 | 后台应用、内容管理、工作台(即云后台)等 |
权限策略配置窗口:
十、数据权限
数据权限控制角色可以访问哪些数据,支持行级和列级两种维度。
十一、行级权限(数据行)
控制用户可以访问哪些数据行,实现数据隔离。
常见配置方式:
| 权限类型 | 说明 | 适用场景 |
| 所有数据 | 访问全部数据行 | 管理员、数据分析人员 |
| 仅自己的数据 | 只能访问自己创建的数据 | 普通用户、个人数据管理 |
| 特定条件数据 | 满足特定条件的数据(如部门) | 部门经理、区域负责人 |
配置示例:
实际应用:
·销售人员只能查看自己负责的客户数据
·部门经理可以查看本部门的所有数据
·区域经理可以查看所负责区域的数据
十二、列级权限(数据列)
控制用户可以访问哪些字段(列),隐藏敏感信息。
配置选项:
·可读字段:用户可以查看的字段列表
·隐藏字段:对用户不可见的敏感字段
配置示例:
实际应用:
·隐藏销售人员的成本和利润字段
·隐藏客服人员的用户手机号和身份证号
·隐藏普通员工的薪资和绩效数据
注意:说明:
注意:行级权限和列级权限可以同时使用,实现更精细的数据访问控制。
配置说明:
不同资源类型支持的操作权限可能有所差异,具体配置方式请参考对应的资源文档。