跳到主要内容

数据权限配置指南

CloudBase 提供了多层次的数据权限管理机制,确保数据安全的同时满足不同业务场景的权限控制需求。

🎯 权限管理体系

CloudBase 数据权限管理包含三个层次:

权限类型控制粒度适用场景配置复杂度
基础权限控制模型级别简单的权限需求
角色权限用户级别组织架构权限
安全规则权限文档级别复杂的业务逻辑

权限优先级

不同权限类型之间的关系:

  • 角色权限基础权限并集 为最终权限
  • 安全规则权限 具有最高优先级,会覆盖其他权限设置
  • 建议根据业务复杂度选择合适的权限管理方式

🔧 基础权限控制

功能特点

基础权限控制是最简单的权限管理方式,适合大多数常见的业务场景:

  • 模型级别控制:针对整个数据模型设置统一权限
  • 预设权限模板:提供常用的权限配置模板
  • 简单易用:无需编写复杂的规则表达式

配置方式

CloudBase 控制台 的数据模型页面,为每个模型设置对应的权限:

基础权限配置

权限选项

从用户的身份出发,去选择对应的权限

  • 所有用户包含匿名用户、外部用户、内部用户。
  • 一个匿名用户的实际权限是所有用户和匿名用户的权限最大集;外部用户和内部用户也是同理。
  • 最佳实践一:只通过所有用户来管理权限;设置匿名用户、外部用户、内部用户的权限为无权限。
  • 最佳实践二:删除"所有用户"的规则,通过细分角色来管理权限。
权限类型适用场景
读取全部数据,修改本人数据公开内容,如文章、商品
读取和修改本人数据私人数据,如用户资料
读取全部数据,不可修改数据配置数据,如系统设置
无权限敏感数据,如财务信息

👥 自定义角色权限控制

功能概述

角色权限是基于组织架构的权限管理方式,适合企业级应用中的层级权限控制。它与基础权限控制相互补充,最终权限为两者的并集

核心特点

  • 组织架构支持:基于部门、上下级关系的权限控制
  • 角色继承:支持权限的层级继承
  • 灵活组合:与基础权限取并集,提供更灵活的权限配置

配置步骤

第一步:进入角色管理

访问 自定义角色页面,管理组织架构和角色定义:

角色管理入口

第二步:配置行权限

选择目标角色,点击「行权限设置」进行详细配置:

行权限设置

权限级别说明

权限级别数据范围适用场景示例
查看本人所有人字段值为自己的数据个人数据管理员工只能查看自己的考勤记录
查看本人及下属自己和下属的数据团队管理主管可以查看团队成员的工作报告
查看本部门及子部门本部门及子部门的数据部门管理部门经理查看部门内所有项目
查看全部所有数据系统管理管理员查看全公司数据

权限组合规则

读写权限关系

⚠️ 重要:行修改权限自动包含读权限,即有修改权限就有读权限。

权限并集计算

基础权限 + 角色权限 = 最终权限

示例场景

基础权限:仅创建者及管理员可读写
角色权限:查看全部 + 无修改权限
─────────────────────────────────
最终权限:可以查看所有数据,但只能修改自己创建的数据

🛡️ 安全规则权限

如若上述两种权限模式无法满足您的需求,您可以使用 安全规则权限 进行更精细的权限控制。

请参考 自定义角色权限控制 文档。

实际应用案例

案例 1:博客权限

业务需求

  • 可以查看所有人的博客
  • 自己更新自己的博客

基础权限配置

所有用户/读取全部数据,修改本人数据

案例 2:项目管理系统

业务需求

  • 项目成员只能查看参与的项目
  • 项目经理可以管理负责的项目
  • 部门经理可以查看部门所有项目

基础权限配置

所有用户/读取和修改本人数据

角色权限配置

角色角色数据权限行修改权限最终效果
销售员查看本人本人只能查看和修改自己的客户
销售主管查看本人及下属本人及下属可以管理团队所有客户
销售总监查看全部查看全部可以管理所有客户

🎯 权限选择指南

根据业务复杂度选择

业务场景推荐方案原因
简单应用基础权限控制配置简单,满足基本需求
复杂业务逻辑安全规则权限灵活的表达式,支持复杂判断
企业级应用角色权限 + 基础权限组织架构支持,权限层次清晰
高安全要求安全规则 + 角色权限多层防护,精细控制

权限配置建议

  1. 从简单开始:先使用基础权限,根据需要逐步升级
  2. 分层设计:基础权限处理通用逻辑,安全规则处理特殊逻辑
  3. 测试验证:在开发环境充分测试各种权限场景
  4. 文档记录:详细记录权限设计思路和配置说明

通过合理的权限配置,您可以构建既安全又灵活的数据访问控制体系,满足各种复杂的业务需求。