feat: 实现 argon2 哈希池、令牌与登录锁定计数
This commit is contained in:
@@ -198,6 +198,29 @@
|
||||
- 备选方案:取消即从队列摘除(需可取消数据结构)。
|
||||
- 影响:极端取消场景下调用方可能多等一会儿。
|
||||
|
||||
### P3 2026-09-30
|
||||
|
||||
1. **管理员/注册锁定阈值沿用登录 IP 档**
|
||||
- 原条款:登录/对话密码阈值写清;管理员登录与注册安全码仅写「临时锁定」,未给数字。
|
||||
- 实际做法:`LockAdminIP`、`LockRegisterIP`、`LockTalkPair`/`LockLoginEndpointIP` 均为 5 分钟窗口 10 次、锁 5 分钟;`LockTalkTarget`/`LockLoginEndpoint` 为 1 小时 50 次、锁 1 小时。
|
||||
- 原因:与 PRD D18/F23「默认 5 分钟 10 次」叙述一致。
|
||||
- 备选方案:管理员单独更严阈值。
|
||||
- 影响:A/I/N 线直接用 `LoginLocks` 即可。
|
||||
|
||||
2. **真实 auth 实现未改 wire.go**
|
||||
- 原条款:平台不改 `wire.go`;P3 实现接口。
|
||||
- 实际做法:提供 `NewPool`/`NewSessionTokens`/`NewAPITokens`/`NewLoginLocks`;`wire()` 仍用 Stub,由总控或各线接线时替换。
|
||||
- 原因:分工禁止改 wire.go。
|
||||
- 备选方案:在 serve 旁路替换(会绕过 wire)。
|
||||
- 影响:合入后需有一次接线才能在进程内用上真实哈希池。
|
||||
|
||||
3. **令牌随机部分用 RawURLEncoding**
|
||||
- 原条款:32 字节随机数的 base64url。
|
||||
- 实际做法:`encoding/base64.RawURLEncoding`(无 padding)。
|
||||
- 原因:URL/Header 友好,与常见 token 惯例一致。
|
||||
- 备选方案:StdEncoding 带 padding。
|
||||
- 影响:SDK/文档示例需无 `=` 结尾。
|
||||
|
||||
## 连接 N
|
||||
|
||||
暂无。
|
||||
|
||||
Reference in New Issue
Block a user