System 系统业务需求文档(BRD)V1.1
文档版本: 1.1
创建日期: 2026-03-04
最后更新: 2026-03-04
文档作者: 业务方/客户
审批状态: 修订中(基于评审意见V1.0修订)
修订记录
| 版本 | 修订日期 | 修订人 | 修订内容 |
|---|---|---|---|
| 1.0 | 2026-03-04 | 业务方 | 初始版本 |
| 1.1 | 2026-03-04 | 业务方 | 根据评审意见修订,详见 review-response.md |
1. 需求背景
1.1 业务背景
作为企业数字化转型的基础支撑平台,System 系统需要提供统一的用户管理、权限控制和基础配置能力,为后续各业务应用系统提供标准化的基础服务。
1.2 战略定位
System 系统是公司数字化转型的基础设施层,定位为:
- 统一身份认证中心:为全公司所有业务系统提供统一的用户身份认证服务
- 统一权限管理中心:实现基于RBAC的集中权限管控
- 统一组织架构中心:提供标准化的组织架构数据服务
- 基础能力支撑平台:为上层业务应用提供用户、权限、组织等基础能力
本项目是公司"数字化战略三年规划"的第一阶段核心任务,为后续ERP、CRM、OA等业务系统建设奠定基础。
1.3 痛点分析
- 各业务系统用户数据分散,重复维护成本高
- 权限管理不统一,存在安全隐患
- 缺乏统一的组织架构管理
- 系统配置分散,难以维护
1.4 目标价值
通过建设 System 基础平台,实现:
- 统一用户身份管理,一次登录全系统通行
- 集中权限管控,保障系统安全
- 标准化组织架构,支撑业务流程
- 统一基础配置,降低维护成本
2. 投资回报分析(ROI)
2.1 成本节约分析
| 成本项 | 当前状态(年) | 建设后(年) | 节约金额(年) |
|---|---|---|---|
| 用户维护人力 | 5人×0.5天/周 = 130人天 | 2人×0.5天/周 = 52人天 | 78人天 |
| 权限管理人力 | 3人×1天/月 = 36人天 | 1人×0.5天/月 = 6人天 | 30人天 |
| 密码重置支持 | 2人×2小时/天 = 146人天 | 自助服务 = 0人天 | 146人天 |
| 合计 | 312人天 | 58人天 | 254人天 |
按人均成本500元/天计算,年节约 127,000元
2.2 效率提升分析
| 指标 | 当前 | 目标 | 提升 |
|---|---|---|---|
| 新员工账号开通时间 | 2-3天 | 2小时内 | 提升90% |
| 权限变更处理时间 | 1-2天 | 实时生效 | 提升99% |
| 用户登录时间(多系统) | 每次需重新登录 | 单点登录 | 节省80%时间 |
2.3 风险降低价值
| 风险项 | 当前风险等级 | 建设后风险等级 | 风险降低价值 |
|---|---|---|---|
| 数据泄露风险 | 高(权限分散) | 低(集中管控) | 避免潜在损失 |
| 合规审计风险 | 中(日志不全) | 低(完整审计) | 避免合规处罚 |
| 人员离职风险 | 中(权限回收慢) | 低(实时回收) | 降低安全风险 |
2.4 投资回报总结
- 项目总投资: 约30万元(含开发、测试、部署、培训)
- 年运营成本: 约5万元
- 年节约/收益: 约15万元(人力节约+效率提升)
- 投资回收期: 约2.5年
- 3年ROI: 约50%
3. 风险评估
3.1 风险矩阵
| 风险编号 | 风险类型 | 风险描述 | 概率 | 影响 | 风险等级 | 应对措施 |
|---|---|---|---|---|---|---|
| R-001 | 技术风险 | 数据迁移失败,历史数据丢失 | 中 | 高 | 高 | 制定详细迁移方案,保留原始数据备份,支持回滚 |
| R-002 | 进度风险 | 项目延期,影响后续系统建设 | 中 | 中 | 中 | 采用敏捷开发,分阶段交付,预留20%缓冲时间 |
| R-003 | 业务风险 | 用户接受度低,推广困难 | 低 | 中 | 低 | 加强培训和宣导,提供操作手册,设置过渡期 |
| R-004 | 集成风险 | 与现有系统集成困难 | 中 | 中 | 中 | 提前进行技术调研,制定标准接口规范 |
| R-005 | 安全风险 | 权限配置错误导致数据泄露 | 低 | 高 | 中 | 建立权限审核机制,提供权限预览功能 |
| R-006 | 人员风险 | 关键人员离职 | 低 | 中 | 低 | 知识文档化,避免单点依赖 |
3.2 风险应对策略
高风险(R-001):
- 数据迁移前进行完整备份
- 迁移过程分批次进行,先试点后推广
- 保留原系统并行运行1个月
- 制定详细的回滚方案
中风险(R-002, R-004, R-005):
- 建立项目监控机制,每周汇报进度
- 提前识别集成点,制定接口规范
- 权限变更需要双人复核
低风险(R-003, R-006):
- 制定用户培训计划
- 建立知识库,文档化核心设计
4. 用户故事
US-001A:用户查询
故事描述: 作为系统管理员, 我希望能够查询和查看用户信息, 以便了解系统用户情况。
验收标准:
- [ ] 可以按用户名、真实姓名、部门、状态等条件查询用户
- [ ] 可以查看用户列表,支持分页(每页20/50/100条)
- [ ] 可以查看用户详情:基本信息、所属部门、拥有角色、登录日志
- [ ] 可以导出查询结果(Excel格式,敏感信息脱敏)
- [ ] 列表页显示字段:用户名、真实姓名、部门、状态、最后登录时间
优先级: 高 故事点: 3
US-001B:用户创建与导入
故事描述: 作为系统管理员, 我希望能够创建单个用户或批量导入用户, 以便快速初始化系统用户。
验收标准:
- [ ] 可以创建单个用户
- 用户名规则:字母开头,4-20位,允许字母数字下划线,全局唯一
- 必填项:用户名、真实姓名、初始密码、所属部门
- 选填项:邮箱、手机号、岗位
- 邮箱格式校验,发送验证邮件
- 手机号格式校验(大陆手机号11位)
- [ ] 支持批量导入用户(Excel模板)
- 单次最大导入500条
- 提供标准导入模板下载
- 导入前数据校验(格式、重复、部门存在性)
- 导入失败生成错误报告(行号、错误原因)
- 导入成功发送通知邮件
- [ ] 批量导入安全性控制
- 文件大小限制:最大2MB
- 文件格式限制:仅允许.xlsx格式
- 病毒扫描(如系统支持)
- 操作日志记录导入人和导入时间
优先级: 高 故事点: 5
US-001C:用户编辑
故事描述: 作为系统管理员, 我希望能够编辑用户信息和重置密码, 以便维护用户信息的准确性。
验收标准:
- [ ] 可以编辑用户信息(用户名不可修改)
- 可编辑字段:真实姓名、邮箱、手机号、部门、岗位、状态
- 修改邮箱需重新验证(发送验证邮件)
- 修改手机号需短信验证
- 修改部门需确认数据权限变更
- [ ] 可以重置用户密码
- 生成随机初始密码(符合密码强度要求)
- 重置后用户首次登录强制修改密码
- 强制修改密码不能与最近3次密码重复
- 发送密码重置通知(邮件/短信)
- [ ] 编辑操作记录审计日志
优先级: 高 故事点: 3
US-001D:用户禁用与删除
故事描述: 作为系统管理员, 我希望能够禁用或删除用户账号, 以便管理离职或异常用户。
验收标准:
- [ ] 可以禁用/启用用户账号
- 被禁用的用户无法登录系统
- 已登录用户的Token立即失效(5分钟内)
- 禁用用户保留所有历史数据
- 批量禁用支持(最多50条)
- [ ] 可以删除用户(需满足以下条件)
- 用户从未登录过系统(仅预创建状态)
- 用户无操作日志记录
- 用户无待办事项
- 删除前需二次确认(弹窗提示)
- 删除操作记录审计日志
- [ ] 已删除用户不可恢复,数据物理删除
优先级: 高 故事点: 2
US-002:角色权限管理
故事描述: 作为系统管理员, 我希望能够定义角色并分配菜单、操作和数据权限, 以便实现基于角色的访问控制(RBAC)。
验收标准:
- [ ] 可以创建角色
- 设置角色名称、角色编码(全局唯一)、角色描述
- 角色状态:启用/禁用
- [ ] 可以为角色分配菜单权限
- 树形菜单选择,支持全选/取消全选
- 权限生效实时同步(无需重新登录)
- [ ] 可以为角色分配操作权限
- 按菜单细分操作:查询、新增、编辑、删除、导出等
- 操作权限依赖于菜单权限
- [ ] 可以设置数据权限范围
- 全部数据:可查看所有数据(超级管理员)
- 本部门及子部门数据:可查看本部门及下属部门数据
- 本部门数据:仅可查看本部门数据
- 本人数据:仅可查看自己创建的数据
- 数据权限判定逻辑:
数据权限检查流程: 1. 获取用户所有角色的数据权限设置 2. 取最大权限范围(全部 > 本部门及子部门 > 本部门 > 本人) 3. 查询数据时自动附加数据权限过滤条件 4. 特殊数据可通过数据权限申请流程获取
- [ ] 一个用户可以拥有多个角色
- 用户权限为多个角色的并集
- 支持设置主角色(用于默认数据权限)
- [ ] 可以查看角色的用户列表
- [ ] 系统预置默认角色(不可删除)
- 超级管理员:全部权限
- 系统管理员:用户管理、角色管理权限
- 部门管理员:本部门用户管理权限
- 普通用户:仅本人数据权限
优先级: 高 故事点: 8
US-003:组织架构管理
故事描述: 作为系统管理员, 我希望能够管理组织架构(部门、岗位), 以便支持业务系统的组织维度权限控制和流程审批。
验收标准:
- [ ] 可以创建部门
- 支持多级树形结构(建议不超过5级)
- 部门编码全局唯一
- 必填项:部门名称、部门编码、上级部门
- 选填项:部门负责人、部门描述、排序号
- [ ] 可以编辑部门信息
- 可编辑字段:部门名称、部门负责人、部门描述、排序号
- 部门编码不可修改
- 上级部门修改需考虑数据权限影响
- [ ] 可以禁用/启用部门
- 禁用后该部门不可新增用户
- 禁用后该部门用户无法被选择(但已有数据保留)
- 有子部门的部门不可禁用
- [ ] 可以创建岗位
- 设置岗位名称、岗位编码、所属部门
- 岗位编码在部门内唯一
- [ ] 可以为用户分配主部门和兼职部门
- 一个用户只能有一个主部门
- 一个用户可以有多个兼职部门
- 数据权限默认基于主部门
- [ ] 可以设置部门负责人
- 负责人自动获得部门管理员角色
- 负责人可管理本部门用户
- [ ] 支持组织架构图可视化展示
- 树形结构展示
- 支持展开/折叠
- 显示部门人数
优先级: 高 故事点: 5
US-004:系统基础配置
故事描述: 作为系统管理员, 我希望能够配置系统基础参数, 以便个性化定制系统展示和运行行为。
验收标准:
- [ ] 可以设置系统显示信息
- 系统名称、系统Logo(支持上传图片)
- 登录页背景(支持上传图片)
- 版权信息、备案信息
- [ ] 可以配置密码策略
- 最小长度:8-20位(默认8位)
- 复杂度要求:是否必须包含大小写字母、数字、特殊字符
- 密码过期时间:30-180天(默认90天,0表示永不过期)
- 历史密码限制:不能与最近N次密码重复(默认3次)
- [ ] 可以配置登录策略
- 失败次数锁定:3-10次(默认5次)
- 锁定时间:5-60分钟(默认30分钟)
- 会话超时时间:15-120分钟(默认30分钟)
- [ ] 可以管理系统公告
- 发布公告:标题、内容、有效期、是否置顶
- 编辑公告(仅未过期)
- 删除公告
- 置顶/取消置顶
- [ ] 可以查看系统操作日志
- 查询条件:操作人、操作模块、操作类型、时间范围
- 显示字段:操作时间、操作人、IP地址、操作模块、操作类型、操作结果、操作详情
- 支持导出(Excel格式)
- 日志保留180天,过期自动归档
- [ ] V2.0需求(扩展性)
- 多语言支持(中文、英文)
- 多时区支持
- 主题切换(浅色/深色模式)
优先级: 中 故事点: 5
5. 业务流程
流程一:新员工入职账号开通
参与者:HR专员、系统管理员、新员工
正常流程:
1. HR专员在系统提交【入职申请】,填写员工基本信息
2. 系统自动通知系统管理员
3. 系统管理员创建用户账号,分配部门和岗位
4. 系统自动发送账号信息(用户名、初始密码)到新员工邮箱
5. 新员工首次登录,系统强制要求修改密码
6. 新员工完善个人资料
7. 系统管理员根据岗位职责分配角色权限
8. 账号开通完成,员工可正常使用系统
异常流程:
- 异常1:HR提交申请后,系统管理员离职
→ 系统自动将申请转给上级管理员或超级管理员
- 异常2:系统发送邮件失败
→ 系统标记发送失败,管理员可手动重发或导出账号信息
- 异常3:新员工邮箱填写错误
→ 管理员可修改邮箱后重新发送
- 异常4:新员工7天内未登录激活
→ 系统自动禁用账号,管理员可手动启用或重新发送激活邮件流程二:员工离职账号处理
参与者:HR专员、系统管理员
正常流程:
1. HR专员在系统提交【离职申请】
2. 系统自动通知系统管理员
3. 系统管理员确认该用户无待办业务
4. 系统管理员禁用用户账号(保留数据)
5. 系统记录离职时间和操作人
6. 30天后,如无业务需要,可彻底删除账号
异常流程:
- 异常1:离职员工有未完成的审批流程
→ 系统提示待办事项,需转交或处理完成后方可离职
- 异常2:离职员工是部门负责人
→ 系统提示需先变更部门负责人
- 异常3:离职员工有数据所有权(如文档创建者)
→ 提供数据转移功能,将数据所有权转移给指定人员流程三:权限变更申请
参与者:普通用户、部门管理员、系统管理员
正常流程:
1. 用户提交【权限变更申请】,说明申请原因和所需权限
2. 部门管理员审批
3. 如超出部门权限范围,转系统管理员审批
4. 审批通过后,系统管理员分配相应角色
5. 系统记录权限变更日志
6. 用户即时获得新权限
异常流程:
- 异常1:申请人所在部门无管理员
→ 直接转系统管理员审批
- 异常2:审批人长时间未审批(超过3天)
→ 系统自动提醒,超过5天自动升级给上级
- 异常3:审批被拒绝
→ 申请人可查看拒绝原因,可重新提交申请或申诉6. 业务规则
| 规则编号 | 规则名称 | 规则描述 | 优先级 |
|---|---|---|---|
| BR-001 | 用户名唯一性 | 用户名全局唯一,不可重复;规则:字母开头,4-20位,允许字母数字下划线 | 高 |
| BR-002 | 密码强度要求 | 密码长度8-20位,必须包含大小写字母、数字、特殊字符;特殊字符白名单:!@#$%^&* | 高 |
| BR-003 | 密码过期策略 | 密码90天必须更换,过期前7天提醒;0表示永不过期 | 中 |
| BR-004 | 登录失败锁定 | 连续5次登录失败,账号锁定30分钟 | 高 |
| BR-005 | 会话超时 | 无操作30分钟,自动退出登录 | 中 |
| BR-006 | 部门编码唯一 | 部门编码在全局唯一 | 高 |
| BR-007 | 角色编码唯一 | 角色编码在全局唯一 | 高 |
| BR-008 | 数据权限继承 | 上级部门可以查看下级部门数据(可配置) | 中 |
| BR-009 | 操作日志保留 | 操作日志保留180天,过期自动归档 | 低 |
| BR-010 | 超级管理员保护 | 超级管理员角色不可删除、不可禁用;至少保留1个超级管理员 | 高 |
| BR-011 | 部门变更处理 | 部门合并时,原部门用户自动转入新部门;部门拆分时,需指定用户归属 | 中 |
7. 合规要求
7.1 等保三级要求
| 合规项 | 要求 | 实现方式 | 验收标准 |
|---|---|---|---|
| 身份鉴别 | 用户身份唯一标识,密码复杂度要求 | 用户名全局唯一,BR-002密码规则 | 符合BR-001、BR-002 |
| 访问控制 | 基于角色的访问控制,最小权限原则 | RBAC权限模型 | 符合US-002验收标准 |
| 安全审计 | 操作日志完整记录,保留6个月以上 | 审计日志表,BR-009日志保留策略 | 符合US-004操作日志要求 |
| 数据完整性 | 敏感数据传输加密 | HTTPS全站传输 | 系统部署配置 |
| 数据保密性 | 密码加密存储 | bcrypt算法加密 | 技术方案评审 |
7.2 数据安全要求
| 安全项 | 要求 | 实现方式 |
|---|---|---|
| 密码存储 | 不可逆加密 | bcrypt算法,salt随机生成 |
| 敏感信息传输 | 加密传输 | HTTPS协议 |
| 敏感信息展示 | 脱敏处理 | 手机号显示为138*8888,邮箱显示为a@example.com |
| 数据导出 | 审批控制 | 敏感数据导出需管理员审批 |
| 数据备份 | 定期备份 | 每日全量备份,保留30天 |
8. 对外接口服务
System 系统作为基础平台,提供以下标准API供其他业务系统调用:
8.1 用户服务接口
| 接口 | 功能 | 调用方 |
|---|---|---|
| GET /api/user/info | 获取当前用户信息 | 所有业务系统 |
| GET /api/user/ | 获取指定用户信息 | 授权系统 |
| GET /api/user/list | 获取用户列表 | 授权系统 |
| POST /api/user/validate | 验证用户身份 | 认证中心 |
8.2 权限服务接口
| 接口 | 功能 | 调用方 |
|---|---|---|
| GET /api/permission/menus | 获取用户菜单权限 | 所有业务系统 |
| GET /api/permission/operations | 获取用户操作权限 | 所有业务系统 |
| POST /api/permission/check | 校验用户是否有某权限 | 所有业务系统 |
8.3 组织服务接口
| 接口 | 功能 | 调用方 |
|---|---|---|
| GET /api/org/departments | 获取部门列表 | 所有业务系统 |
| GET /api/org/department/{id}/users | 获取部门用户列表 | 授权系统 |
| GET /api/org/positions | 获取岗位列表 | 授权系统 |
8.4 接口规范
- 认证方式: JWT Token
- 数据格式: JSON
- 编码格式: UTF-8
- 接口版本: v1(URL中包含版本号,如/api/v1/user/info)
- 限流策略: 单IP 1000次/分钟
- 接口文档: 提供Swagger/OpenAPI文档
9. 非功能性需求
9.1 性能需求
| 指标 | 要求 | 说明 |
|---|---|---|
| 用户登录响应时间 | < 2秒 | 从点击登录到进入首页 |
| 用户列表查询(1000条) | < 1秒 | 常规查询条件 |
| 组织架构树加载 | < 1秒 | 全量部门数据 |
| 并发用户数 | > 500 | 同时在线用户 |
| 系统总用户数 | > 5000 | 注册用户总数 |
| 批量导入 | 500条/次 | 单次导入最大数量 |
| 数据导出 | 10000条/次 | 单次导出最大数量 |
9.2 安全需求
| 安全项 | 要求 |
|---|---|
| 密码加密 | bcrypt算法,cost factor = 10 |
| 传输加密 | HTTPS全站,TLS 1.2+ |
| 敏感操作 | 需要二次确认 |
| 接口认证 | JWT Token,有效期30分钟 |
| 会话管理 | 支持强制下线,Token黑名单 |
| 防暴力破解 | 登录失败锁定(BR-004) |
| SQL注入防护 | 参数化查询,ORM框架 |
| XSS防护 | 输入过滤,输出编码 |
9.3 可用性需求
| 指标 | 要求 |
|---|---|
| 系统可用性 | > 99.9%(年停机时间 < 8.76小时) |
| 故障恢复时间 | < 30分钟 |
| 数据备份 | 每日全量备份,保留30天 |
| 灾难恢复 | RPO < 24小时,RTO < 4小时 |
9.4 兼容性需求
| 平台 | 要求 |
|---|---|
| PC浏览器 | Chrome 90+, Firefox 88+, Edge 90+, Safari 14+ |
| 分辨率 | 支持1920×1080及以上,适配1366×768 |
| 移动端 | V2.0支持(V1.0暂不支持) |
10. 数据字典
10.1 用户状态
| 状态值 | 状态名称 | 说明 |
|---|---|---|
| 0 | 禁用 | 用户无法登录 |
| 1 | 启用 | 用户正常使用 |
| 2 | 锁定 | 登录失败次数过多,自动锁定 |
| 3 | 未激活 | 新建用户,未首次登录 |
状态流转:
未激活 → 启用(首次登录)
启用 ↔ 禁用(管理员操作)
启用 → 锁定(登录失败过多)
锁定 → 启用(锁定时间到或管理员解锁)10.2 部门状态
| 状态值 | 状态名称 | 说明 |
|---|---|---|
| 0 | 禁用 | 不可新增用户,已有用户保留 |
| 1 | 启用 | 正常使用 |
10.3 角色状态
| 状态值 | 状态名称 | 说明 |
|---|---|---|
| 0 | 禁用 | 不可分配给用户 |
| 1 | 启用 | 正常使用 |
10.4 数据权限类型
| 权限值 | 权限名称 | 说明 |
|---|---|---|
| 1 | 全部数据 | 可查看所有数据 |
| 2 | 本部门及子部门 | 可查看本部门及下属部门数据 |
| 3 | 本部门 | 仅可查看本部门数据 |
| 4 | 本人数据 | 仅可查看自己创建的数据 |
10.5 操作类型(审计日志)
| 类型值 | 类型名称 |
|---|---|
| 1 | 新增 |
| 2 | 编辑 |
| 3 | 删除 |
| 4 | 查询 |
| 5 | 登录 |
| 6 | 登出 |
| 7 | 导出 |
| 8 | 导入 |
| 9 | 启用/禁用 |
| 10 | 其他 |
11. 附录
11.1 术语表
| 术语 | 定义 |
|---|---|
| RBAC | 基于角色的访问控制(Role-Based Access Control) |
| JWT | JSON Web Token,用于身份认证的令牌 |
| SSO | 单点登录(Single Sign-On) |
| 数据权限 | 用户可以查看和操作的数据范围 |
| 操作权限 | 用户可以执行的按钮操作(增删改查) |
| 主部门 | 用户的主要归属部门,决定数据权限 |
| 兼职部门 | 用户的次要归属部门,仅用于信息展示 |
11.2 参考文档
- 项目计划文档:PROJECT-PLAN.md
- 时序图:project-diagrams/
- 评审意见:business-requirements-review.md
- 评审回复:review-response.md
11.3 V2.0需求规划
| 需求编号 | 需求名称 | 说明 |
|---|---|---|
| V2.0-001 | 多语言支持 | 中文、英文界面切换 |
| V2.0-002 | 多时区支持 | 支持多时区时间显示 |
| V2.0-003 | 移动端适配 | 响应式布局,支持手机浏览器 |
| V2.0-004 | 主题切换 | 浅色/深色模式切换 |
| V2.0-005 | 高级审计 | 操作录像、敏感操作实时告警 |
文档版本: 1.1
创建日期: 2026-03-04
最后更新: 2026-03-04
文档作者: 业务方/客户
审批状态: 已通过
