Skip to content

后台 · 用户与权限管理(UMS)

覆盖页面:会员列表、会员等级、用户列表、角色列表、菜单列表、资源列表 路由前缀:/ums 设计目标:管好两类人(C端会员 + B端运营账号),权限清晰可控


一、会员列表(/ums/member)

1.1 页面定位

  • 角色:C 端消费者资产管理,会员运营的基础
  • 用户决策:哪些会员活跃?哪些需要召回?违规会员怎么处理?
  • 核心指标:会员总量、活跃率、违规处理效率

1.2 页面结构

┌─ 筛选搜索 ──────────────────────────────────┐
│ 用户名[____] 手机号[____] 会员等级[▾]            │
│ 启用状态[▾] 注册时间[起~止]   [查询] [重置]      │
└────────────────────────────────────────────┘
┌─ 会员列表 ──────────────────────────────────┐
│ │编号│头像│用户名│手机号│会员等级│积分│成长值│状态│注册时间│操作│
│ │ 1 │[○]│user1│138xx│黄金会员│1200│3000│[启用]│07-01│详情│
│ │   │   │    │     │     │    │    │    │     │禁用│
└────────────────────────────────────────────┘

1.3 功能模块

列表展示

  • 会员基础信息 + 等级 + 积分 + 成长值 + 状态
  • 状态 Tag:启用(绿)/禁用(红)

行内操作

操作说明
详情弹窗展示会员完整信息(资料/积分/等级/最近登录/订单统计)
禁用/启用禁用后该会员无法登录下单,二次确认

会员详情弹窗

  • 基本信息:头像/用户名/手机/性别/生日/注册时间
  • 资产信息:积分/成长值/会员等级
  • 行为信息:最近登录时间/登录次数
  • 消费统计:订单数/消费总额(可选)

1.4 业务规则

规则说明
禁用影响禁用会员无法登录,已登录会话强制下线
不可删除会员涉及订单数据,仅可禁用不可删除
等级自动会员等级由成长值自动计算(见会员等级),不可手动改

1.5 验收标准

  • AC-MM01:会员多条件筛选,详情弹窗完整展示
  • AC-MM02:禁用会员后无法登录
  • AC-MM03:会员等级与积分正确展示

二、会员等级(/ums/memberLevel)

2.1 页面定位

  • 角色:会员成长体系的规则配置,决定"升级有什么好处"
  • 用户决策:等级怎么划分?各等级给什么权益?
  • 核心指标:高等级会员占比、升级驱动的复购

2.2 页面结构

┌─ 会员等级列表 ────────────────────────────────┐
│ [+ 新增等级]                                  │
│ │编号│等级名称│所需成长值│折扣率│免邮│积分倍率│是否默认│操作│
│ │ 1 │普通会员│ 0      │1.0 │否 │ 1x  │[默认]│编辑│
│ │ 2 │白银会员│ 1000   │0.98│否 │ 1.2x│    │编辑│
│ │ 3 │黄金会员│ 5000   │0.95│是 │ 1.5x│    │编辑│
│ │ 4 │钻石会员│ 20000  │0.9 │是 │ 2x  │    │编辑│
└────────────────────────────────────────────┘

2.3 等级模型

字段规则
等级名称*如"黄金会员"
所需成长值*达到该等级的成长值门槛,唯一且递增
折扣率该等级购物折扣(1.0=无折扣,0.95=95折)
免邮特权是否享受免邮
积分倍率购物获取积分的倍数
备注等级权益说明(前台展示)

2.4 业务规则

规则说明
自动升降级会员成长值变化后自动匹配对应等级(消费累积成长值)
成长值门槛各等级成长值必须唯一且递增
默认等级注册时的初始等级(成长值门槛最低)
删除约束有会员挂靠的等级不可删除;默认等级不可删除

2.5 验收标准

  • AC-ML01:会员等级增删改查,成长值门槛校验
  • AC-ML02:会员成长值达到门槛自动升级
  • AC-ML03:等级权益(折扣/免邮/积分倍率)在下单时生效
  • AC-ML04:有会员的等级删除被拒绝

三、用户列表(/ums/admin)—— B 端运营账号

3.1 页面定位

  • 角色:后台运营团队的账号管理,"谁能进后台"
  • 核心指标:账号安全、权限准确率

3.2 页面结构

┌─ 筛选搜索 ──────────────────────────────────┐
│ 用户名[____] 状态[▾]       [查询] [重置]       │
└────────────────────────────────────────────┘
┌─ 用户列表 ──────────────────────────────────┐
│ [+ 新增用户]                                  │
│ │编号│用户名│昵称│邮箱│角色│状态│最后登录│创建时间│操作│  │
│ │ 1 │admin│超管 │a@x │[超级管理员]│[启用]│07-15│01-01│编辑│
│ │   │    │    │    │        │    │     │     │分配角色│
│ │   │    │    │    │        │    │     │     │禁用│
└────────────────────────────────────────────┘

3.3 功能模块

新增/编辑用户(弹窗)

字段规则
用户名*唯一,4-20位
密码*新增时必填,编辑时可选(不填=不修改)
昵称*展示名
邮箱格式校验
状态启用/禁用

分配角色(核心)

  • 点击"分配角色"打开角色多选弹窗
  • 一个用户可拥有多个角色,权限取并集
  • 保存后立即生效

禁用/启用

  • 禁用后该账号无法登录后台
  • 超级管理员不可被禁用/删除(系统保护)

3.4 业务规则

规则说明
密码存储密码加密存储(BCrypt),不可明文查看
角色并集多角色权限取并集
超管保护内置超管账号不可删除/禁用
最后登录记录最后登录时间,辅助安全审计

3.5 验收标准

  • AC-UA01:用户增删改查,密码加密存储
  • AC-UA02:分配角色后权限即时生效
  • AC-UA03:禁用用户无法登录
  • AC-UA04:超管账号受保护不可删除/禁用

四、角色列表(/ums/role)

4.1 页面定位

  • 角色:权限的载体,"一组权限的打包"
  • 设计思想:不直接给用户权限,而是给用户角色,角色绑定权限
  • 核心指标:角色覆盖率、权限配置准确性

4.2 页面结构

┌─ 角色列表 ──────────────────────────────────┐
│ [+ 新增角色]                                  │
│ │编号│角色名称│描述│用户数│创建时间│操作│          │
│ │ 1 │商品运营│商品管理│ 3 │01-01│分配菜单│       │
│ │   │      │     │   │     │分配资源│       │
│ │   │      │     │   │     │编辑 删除│        │
└────────────────────────────────────────────┘

4.3 功能模块

新增/编辑角色

  • 角色名称* + 描述 + 状态

分配菜单(核心)

  • 打开菜单权限树(三级树形多选)
  • 勾选该角色可见的菜单页面
  • 父子联动:勾选父级自动勾选子级,取消父级自动取消子级
  • 保存后,该角色用户的侧边栏只显示勾选的菜单

分配资源(核心)

  • 打开资源权限列表(按资源分类分组的多选)
  • 勾选该角色可调用的 API 资源
  • 控制按钮级/接口级权限

4.4 业务规则

规则说明
权限并集用户多角色时,菜单与资源权限取并集
内置角色超级管理员角色不可删除/修改权限
删除约束有用户挂靠的角色不可删除
即时生效权限修改后,用户下次请求即按新权限校验

4.5 验收标准

  • AC-R01:角色增删改查
  • AC-R02:分配菜单后,角色用户侧边栏正确过滤
  • AC-R03:分配资源后,无权 API 返回 403
  • AC-R04:有用户的角色删除被拒绝

五、菜单列表(/ums/menu)

5.1 页面定位

  • 角色:后台页面权限树的维护,"后台有哪些页面"
  • 核心指标:菜单结构准确性

5.2 页面结构

  • 树形表格展示三级菜单(模块→页面→按钮/子页面)
  • 列:菜单名称/图标/排序/显示状态/操作
  • 新增/编辑:
    • 上级菜单(树选择)
    • 菜单名称* + 前端路径 + 图标
    • 排序 + 显示状态

5.3 业务规则

规则说明
层级最多三级
动态渲染侧边栏菜单 = 全部菜单 ∩ 用户有权限的菜单
删除约束有子菜单的不可删除;已被角色引用的不可删除
隐藏菜单显示状态=隐藏的菜单不在侧边栏展示(如详情页路由)

5.4 验收标准

  • AC-MN01:菜单树增删改查,三级结构
  • AC-MN02:菜单变更后台侧边栏动态更新
  • AC-MN03:隐藏菜单不展示但路由可访问

六、资源列表(/ums/resource)

6.1 页面定位

  • 角色:API 级权限的维护,"哪些接口受权限控制"
  • 设计思想:每个受保护的 API 注册为一个资源,角色绑定资源实现接口鉴权
  • 核心指标:资源覆盖率(所有敏感 API 都已注册)

6.2 页面结构

┌─ 资源列表 ──────────────────────────────────┐
│ [+ 新增资源]  [资源分类管理]                    │
│ │编号│资源名称│资源URL│分类│描述│操作│            │
│ │ 1 │删除商品│/api/product/delete│商品管理│..│编辑│
│ │   │      │               │     │  │删除│
└────────────────────────────────────────────┘

6.3 功能模块

资源管理

  • 新增/编辑:资源名称* + 资源URL*(API路径,支持通配)+ 资源分类 + 描述
  • 资源分类管理(子页面):对资源分组(商品管理/订单管理/…),便于分配时按组勾选

鉴权机制

请求 /api/product/delete
  → 安全框架匹配资源表
  → 校验当前用户角色是否拥有该资源
  → 有权限放行 / 无权限返回 403

6.4 业务规则

规则说明
URL 匹配资源 URL 支持路径匹配(如 /api/product/**)
未注册资源未在资源表注册的 API 默认放行(仅登录校验)
超管豁免超级管理员不受资源权限限制
删除约束已被角色引用的资源不可删除

6.5 验收标准

  • AC-RS01:资源与资源分类增删改查
  • AC-RS02:无资源权限的用户调用受控 API 返回 403
  • AC-RS03:超管不受资源限制
  • AC-RS04:被引用的资源删除被拒绝

七、体验优化(效率与安全视角)

权限模块的核心是"安全可控、配置不犯错"。按优先级排列。

会员管理

优先级优化点说明
P1会员画像标签详情弹窗展示消费能力/活跃度标签(高价值/流失预警),指导精准运营
P1会员导出按筛选条件导出会员名单(脱敏),供营销触达
P2禁用原因记录禁用会员时填写原因,留痕可查

用户/角色/权限(安全重点)

优先级优化点说明
P0权限变更审计日志记录"谁在什么时候给谁改了什么权限",安全事件可追溯(B 端合规刚需)
P0权限预览分配菜单/资源时提供"以该角色身份预览侧边栏",避免配错导致用户看不到页面
P1登录日志用户登录记录(时间/IP/结果),异常登录(多次失败/异地)警示
P1批量导入用户运营团队批量开户时支持 Excel 导入 + 模板下载
P2角色复制复制已有角色为新角色(微调权限),避免从零勾选
P2超管二次验证超管敏感操作(删用户/改权限)要求二次验证(输密码)

菜单/资源

优先级优化点说明
P1资源自动发现提供"扫描未注册 API"功能,列出未纳入权限控制的接口,防止权限遗漏
P2菜单拖拽排序菜单树拖拽调整顺序

设计要点

  • 权限审计日志与权限预览是 B 端权限模块的合规与安全底线,必须优先
  • 权限配置错误的代价是"用户看不到页面"或"越权",预览与审计缺一不可
  • 超管账号受保护 + 敏感操作二次验证,防止内部误操作/恶意操作

Mall 电商系统知识库