Skip to content

用户角色与权限

Mall 电商系统涉及两类用户,每类用户有不同的角色和权限层级。


一、前台用户(消费者)

游客(未登录)

可以做的不能做的
浏览首页、搜索商品加入购物车
查看商品详情和评价下单购买
查看推荐和专题内容收藏商品
注册 / 登录查看订单、管理地址

会员(已登录)

登录后拥有完整的前台功能权限:

功能说明
购物加购物车、下单、支付、查看订单
售后申请退货退款、查看退货进度
个人信息修改昵称/头像、管理收货地址(最多 10 个)
会员体系查看等级、积分、成长值
互动收藏商品、查看浏览历史、发表评价
优惠券领取和使用优惠券

会员等级体系

等级成长值要求权益
普通会员0基础购物功能
更高等级按配置阈值具体权益待扩展

成长值通过下单获得,系统自动根据成长值匹配对应等级(自动升降级)。


二、后台用户(运营团队)

后台采用 RBAC(基于角色的权限控制) 模型,权限通过三层结构管理:

管理员 → 关联角色 → 角色拥有菜单权限 + 资源权限

权限模型说明

概念说明举例
管理员后台登录用户admin(超级管理员)、operator(运营人员)
角色一组权限的集合商品管理员、订单管理员、超级管理员
菜单控制侧边栏能看到哪些页面"商品管理"菜单、"订单管理"菜单
资源控制页面内的按钮/操作"添加商品"按钮、"发货"按钮

权限分配流程

1. 创建菜单(定义有哪些页面)
2. 创建资源(定义页面里有哪些操作)
3. 创建角色(把菜单和资源分配给角色)
4. 创建管理员(给管理员分配角色)

预置角色

角色权限范围典型使用者
超级管理员全部菜单 + 全部资源系统管理员
商品管理员商品管理相关菜单和资源商品运营
订单管理员订单管理相关菜单和资源订单运营

安全机制

机制说明
JWT Token登录后发放 Token,有效期 7 天
图形验证码登录时需输入验证码(5 分钟有效)
账号锁定连续 5 次登录失败,锁定 30 分钟
动态权限每次请求校验当前用户是否有对应资源权限

权限关系图

┌──────────┐     ┌──────────┐     ┌──────────┐
│  管理员   │────→│   角色    │────→│   菜单    │
│ (Admin)  │     │  (Role)  │     │  (Menu)  │
└──────────┘     └──────────┘     └──────────┘


                 ┌──────────┐
                 │   资源    │
                 │(Resource)│
                 └──────────┘

一个管理员可以有多个角色,一个角色可以包含多个菜单和资源权限。

Mall 电商系统知识库