Skip to Content

权限管理系统

权限系统是商业化软件的基础设施,通过精细化权限控制,有效防止数据泄露和未授权访问,保障系统和数据的完整性与安全性。Zion 提供基于角色(RBAC)和属性(ABAC)的权限管理体系。

核心概念

  • 角色:一类用户集合,通过分配角色实现权限控制
  • 数据权限:精确控制角色可访问或修改的数据内容
  • 行为权限:控制角色可使用的行为(如 API、行为流、支付等)

权限系统总览示意

权限配置入口

在“配置”中进入“权限管理”模块。

权限管理入口界面

角色管理

系统内置两类角色:

  • 已登录用户:所有登录用户自动分配
  • 游客:未登录用户(小程序无游客)

开发者可自定义角色,不同版本可创建角色数量不同:

  • 免费版:0 个
  • 高级版:1 个
  • 专业版:10 个

点击“添加”按钮新增角色,角色名一旦后端部署生效后不可更改。

添加角色界面

角色权限配置

数据权限

  1. 操作权限:管理数据的增删改查权限 数据权限配置界面
  2. 字段权限:进一步配置表字段的操作权限 字段权限配置界面
  3. 高级筛选:通过配置行筛选实现更精细的数据权限 高级筛选权限配置界面
    条件权限配置界面

行为权限

控制用户可用的行为权限,包括 API、行为流、AI、支付等。除支付外均可增加“高级筛选”实现更精细控制。

行为权限配置界面

分配角色给用户

权限配置完成后,可将角色分配给用户。方式包括:

  1. 在权限管理系统手动管理 分配角色给用户界面
  2. 在行为流中自动管理(如购买商品后自动分配 VIP 角色) 行为流自动分配角色界面

权限配置生效与错误排查

权限配置变更需后端部署后生效。无权限访问资源时,页面会提示“无权限”或返回 403 错误。

{ "data": null, "errors": [ { "errorCode": 403, "extensions": { "classification": "TABLE_ACCESS" }, "message": "User 1 has no permission for SELECT on order" } ] }

其中,User 1 表示 id1000000000000001 的用户,has no permission for SELECT on order 表示没有查询order表的权限。

理解错误信息后,就可以进入权限查看修改相关配置。

Last updated on