50 lines
2.0 KiB
Markdown
50 lines
2.0 KiB
Markdown
# Users Specification
|
|
|
|
## Purpose
|
|
|
|
定义用户域的行为:分页查询(含数据权限过滤)、新增/编辑/删除(软删回收唯一键)、重置密码、分配角色,以及会话吊销。
|
|
|
|
## Requirements
|
|
|
|
### Requirement: 用户分页查询
|
|
系统 SHALL 支持按用户名/昵称/手机/状态分页查询用户;查询按数据权限过滤(仅本人/本部门/本部门及以下/自定义)。
|
|
|
|
#### Scenario: 部门管理员查看用户
|
|
- **WHEN** 数据权限为「本部门」的管理员查询用户列表
|
|
- **THEN** 仅返回本部门用户
|
|
|
|
### Requirement: 用户增删改
|
|
系统 SHALL 支持新增/编辑用户;删除为软删并回收用户名唯一键(可重建同名)。
|
|
|
|
#### Scenario: 软删重建
|
|
- **WHEN** 删除某用户后再创建同名用户
|
|
- **THEN** 创建成功
|
|
|
|
### Requirement: 重置密码
|
|
系统 SHALL 支持管理员重置用户密码;重置后吊销该用户所有会话(旧 token 失效)。
|
|
|
|
#### Scenario: 重置后踢下线
|
|
- **WHEN** 管理员重置某用户密码
|
|
- **THEN** 该用户旧 access/refresh token 立即失效
|
|
|
|
### Requirement: 分配角色
|
|
系统 SHALL 支持为用户分配角色(整体替换),分配后清该用户权限缓存。
|
|
|
|
#### Scenario: 分配角色
|
|
- **WHEN** 管理员为用户分配角色
|
|
- **THEN** 该用户下次请求按新角色聚合权限
|
|
|
|
### Requirement: 账号锁定
|
|
系统 SHALL 支持管理员锁定用户(可附原因);锁定后该用户无法登录,且其全部活跃会话被吊销。
|
|
|
|
#### Scenario: 锁定用户
|
|
- **WHEN** 管理员锁定某用户
|
|
- **THEN** 系统记录锁定时间与原因,吊销该用户全部会话,该用户后续登录被拒绝
|
|
|
|
### Requirement: 账号解锁
|
|
系统 SHALL 支持管理员解锁用户;解锁后清空锁定时间与原因,并清除该用户的登录失败计数。
|
|
|
|
#### Scenario: 解锁用户
|
|
- **WHEN** 管理员解锁某锁定用户
|
|
- **THEN** 系统清空锁定状态与登录失败计数,该用户恢复登录能力(若 status 为启用)
|