docs: complete task 42 acceptance archive
@@ -1,9 +1,9 @@
|
||||
# 42 Sense密码策略仅限制最短6位
|
||||
|
||||
- 类型:需求 / 缺陷 / 重构
|
||||
- 所属 Epic:#
|
||||
- 所属 MVP / 版本:#
|
||||
- 状态:待验收 / 已完成
|
||||
- 类型:需求变更
|
||||
- 所属 Epic:#7
|
||||
- 所属 MVP / 版本:#8
|
||||
- 状态:待验收
|
||||
- 日期:2026-08-13
|
||||
- Gitea 工单:https://git.ilapage.cn/ila/yovision/issues/42
|
||||
- Wiki 页面:Task-42-Sense密码策略仅限制最短6位
|
||||
@@ -11,32 +11,53 @@
|
||||
|
||||
## 背景与目标
|
||||
|
||||
<!-- 原来有什么问题,这次达到什么结果。 -->
|
||||
负责人确认 Sense demo 与生产密码仅要求至少 6 个字符,取消字符种类和用户名包含限制,以支持用户指定的简单管理员凭据。实际账号和密码属于运行时秘密,不进入本归档。
|
||||
|
||||
## 最终方案
|
||||
|
||||
<!-- 说明实际实现。与建单方案不同之处必须写清原因。 -->
|
||||
- 后端 `ValidatePassword` 只按 Unicode 字符数检查至少 6 个字符;bootstrap 与创建用户继续共享该入口。
|
||||
- 测试覆盖 6 位全小写、包含用户名和 6 个 Unicode 字符通过,以及 5 字符拒绝。
|
||||
- 前端新用户表单只提示“至少 6 位字符”。
|
||||
- Wiki 记录全模式规则和明确接受的风险,交付说明仍建议选择难猜且不复用的密码。
|
||||
- 重新生成 Windows 包,使用运行时注入的脱敏凭据完成 demo 管理员初始化和登录,服务保持运行。
|
||||
|
||||
## 修改文件
|
||||
|
||||
- `<文件>`:<改动说明>
|
||||
- `Sense/server/app/sense/identity/password.go`
|
||||
- `Sense/server/app/sense/identity/password_test.go`
|
||||
- `Sense/ui/src/views/sense/identity/Users.vue`
|
||||
- `docs/03-business-rules-and-glossary.md`
|
||||
- `docs/delivery/README.md`
|
||||
- `wiki-docs.json`
|
||||
- `docs/task/42-Sense密码策略仅限制最短6位.md`
|
||||
|
||||
## 验收结果
|
||||
|
||||
| 验收标准 | 结果 |
|
||||
|---|---|
|
||||
| | 通过 / 未通过 |
|
||||
| 6 位全小写密码通过,5 位拒绝 | 通过 |
|
||||
| 包含用户名密码通过 | 通过 |
|
||||
| bootstrap 与创建用户共享规则 | 通过 |
|
||||
| 前端只提示至少 6 位 | 通过 |
|
||||
| Windows ZIP 重建并完成管理员初始化/登录 | 通过;bootstrap 201,login 200 |
|
||||
| 凭据不进入仓库、Wiki、工单或日志 | 通过;工单需求已脱敏 |
|
||||
|
||||
## 测试
|
||||
|
||||
- 执行命令:`<命令>`
|
||||
- 结果:
|
||||
- **未验证部分**:<!-- 必填;没有就写“无”。 -->
|
||||
- `go test ./app/sense/identity/...`、`go test ./...`:通过。
|
||||
- `corepack pnpm@9.15.1 lint`:0 error,存在既有格式 warning。
|
||||
- `cmd /c Sense\scripts\package-windows.bat`:通过;前端仅有既有 vendor bundle 体积警告。
|
||||
- ZIP:7,280,519 bytes;SHA-256 `7A1DC3378ECAD90DC7521F1E49C7A279E4C31B38D6EBC8CC30E123528BECDEE4`。
|
||||
- 包内 demo:管理员初始化 201、登录 200;服务监听 `127.0.0.1:18080`。
|
||||
- Harness:31 项测试、strict 和 Wiki 镜像检查通过。
|
||||
- **未验证部分**:未在真实 PostgreSQL 环境验证;未由目标管理员人工页面登录验收。生产弱密码风险为负责人明确接受的产品决策。
|
||||
|
||||
## 遗留问题
|
||||
|
||||
<!-- 没有就删除本节。 -->
|
||||
- 本策略显著增加字典猜测和凭据填充风险;当前未增加 MFA、登录限速或外部身份提供者。
|
||||
|
||||
## 相关提交
|
||||
|
||||
- `<提交哈希>` <提交说明>
|
||||
- `8091fbb` feat: simplify Sense password policy (#42)
|
||||
- `88dcebc` docs: record length-only Sense password policy (#42)
|
||||
- `245d38d` docs: create task 42 acceptance archive (#42)
|
||||
Reference in New Issue
Block a user