Admin:更新登录与账号管理基线文档 #49

Closed
opened 2026-08-09 13:06:20 +08:00 by ila · 2 comments
Owner

基本信息

  • 状态:已完成
  • 类型:需求
  • 父级大工单:#14
  • 所属 MVP / 版本:#15 / MVP
  • 阶段:Admin 登录与最小账号管理

要解决什么

Admin 当前基线明确写着 MVP 不做登录,与用户刚确认的范围不一致。正式实现前,需要先把首次管理员初始化、网页登录、最小用户管理、路由隔离、Session 与安全验证写入稳定基线。

做什么 / 不做什么

  • 做:更新 Admin 需求、架构、数据模型、界面和质量安全基线;明确管理员/采购员两种固定角色;明确 Client 四接口不受网页登录影响。
  • 不做:不实现 Go 代码,不执行数据库迁移,不增加 Client 登录或 API Key,不修改 Client 接口字段和状态码。

怎么做

更新以下文件:

  • docs/admin/01-requirements.md:范围、角色、初始化和非目标。
  • docs/admin/02-architecture.md:公开网页、受保护网页与 Client API 的路由分组。
  • docs/admin/03-data-model.md:users、web_sessions 的稳定字段和约束草案。
  • docs/admin/05-ui-specification.md:初始化、登录、用户管理页面和错误状态。
  • docs/admin/06-quality-security.md:密码哈希、Session、CSRF、最后管理员保护和回归门禁。

文档保持简洁,面向初级程序员;不提前写容易与代码漂移的内部细节。

验收标准

  • 五份 Admin 基线对登录范围描述一致。
  • 明确不存在固定默认密码和公开注册。
  • 明确首次管理员只能初始化一次,并发提交最多成功一次。
  • 明确管理员可以创建/禁用采购员,采购员不能管理用户。
  • 明确网页登录中间件不覆盖 /api/v1/client/*。
  • 明确 Session、密码哈希、CSRF、退出和账号禁用规则。
  • 明确 Client 四接口本阶段无契约变化。

怎么验证

从仓库根目录执行:

rg -n "初始化管理员|采购员|web_sessions|/api/v1/client|公开注册" docs/admin

git diff --check -- docs/admin

人工核对五份文档没有互相矛盾,并确认 docs/client/04-admin-api-contract.md 不需要修改。

风险和回退

本任务只改文档。若范围再次调整,回退本任务文档提交,并在 #14、#15 同步恢复对应范围。

## 基本信息 - 状态:已完成 - 类型:需求 - 父级大工单:#14 - 所属 MVP / 版本:#15 / MVP - 阶段:Admin 登录与最小账号管理 ## 要解决什么 Admin 当前基线明确写着 MVP 不做登录,与用户刚确认的范围不一致。正式实现前,需要先把首次管理员初始化、网页登录、最小用户管理、路由隔离、Session 与安全验证写入稳定基线。 ## 做什么 / 不做什么 - 做:更新 Admin 需求、架构、数据模型、界面和质量安全基线;明确管理员/采购员两种固定角色;明确 Client 四接口不受网页登录影响。 - 不做:不实现 Go 代码,不执行数据库迁移,不增加 Client 登录或 API Key,不修改 Client 接口字段和状态码。 ## 怎么做 更新以下文件: - `docs/admin/01-requirements.md`:范围、角色、初始化和非目标。 - `docs/admin/02-architecture.md`:公开网页、受保护网页与 Client API 的路由分组。 - `docs/admin/03-data-model.md`:`users`、`web_sessions` 的稳定字段和约束草案。 - `docs/admin/05-ui-specification.md`:初始化、登录、用户管理页面和错误状态。 - `docs/admin/06-quality-security.md`:密码哈希、Session、CSRF、最后管理员保护和回归门禁。 文档保持简洁,面向初级程序员;不提前写容易与代码漂移的内部细节。 ## 验收标准 - [x] 五份 Admin 基线对登录范围描述一致。 - [x] 明确不存在固定默认密码和公开注册。 - [x] 明确首次管理员只能初始化一次,并发提交最多成功一次。 - [x] 明确管理员可以创建/禁用采购员,采购员不能管理用户。 - [x] 明确网页登录中间件不覆盖 `/api/v1/client/*`。 - [x] 明确 Session、密码哈希、CSRF、退出和账号禁用规则。 - [x] 明确 Client 四接口本阶段无契约变化。 ## 怎么验证 从仓库根目录执行: ```powershell rg -n "初始化管理员|采购员|web_sessions|/api/v1/client|公开注册" docs/admin git diff --check -- docs/admin ``` 人工核对五份文档没有互相矛盾,并确认 `docs/client/04-admin-api-contract.md` 不需要修改。 ## 风险和回退 本任务只改文档。若范围再次调整,回退本任务文档提交,并在 #14、#15 同步恢复对应范围。
Author
Owner

实施记录(2026-08-09)

已完成基线更新,当前等待用户验收。

  • 实现提交:fc03388
  • 归档提交:24b6c74
  • 归档:docs/task/49-admin登录与账号管理基线文档.md
  • 检查:关键规则检索通过,git diff --check -- docs/admin 通过
  • 未验证:本任务不含 Go 实现和数据库迁移;登录、Session、角色和 Client API 回归由后续工单完成。
## 实施记录(2026-08-09) 已完成基线更新,当前等待用户验收。 - 实现提交:`fc03388` - 归档提交:`24b6c74` - 归档:`docs/task/49-admin登录与账号管理基线文档.md` - 检查:关键规则检索通过,`git diff --check -- docs/admin` 通过 - 未验证:本任务不含 Go 实现和数据库迁移;登录、Session、角色和 Client API 回归由后续工单完成。
Author
Owner

用户已于 2026-08-09 明确通过全部 Admin 待验收工单。本工单验收通过,现关闭,并同步父级 #15、#14 的任务清单。

用户已于 2026-08-09 明确通过全部 Admin 待验收工单。本工单验收通过,现关闭,并同步父级 #15、#14 的任务清单。
ila closed this issue 2026-08-09 21:15:40 +08:00
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: chengma/cmautobuy#49