B-64: 安全修复——随机初始密码与跨公司重复上传隔离
- 公司账号创建改为随机一次性初始密码,只在创建响应中显示一次, 密码保证不等于用户名;删除「用户名即初始密码」兼容分支,继续 强制首次登录改密。 - 跨公司相同字节文件上传只返回通用重复状态:不再返回其他公司的 原批次 ID、银行、模板、期间、交易数或诊断;同公司重复上传的 幂等摘要保持可用。 - 补充服务端回归测试,覆盖同公司与跨公司两个分支及随机密码; 完整测试 85 项全绿,node --check 通过。
This commit is contained in:
@@ -33,14 +33,11 @@
|
||||
公司账号必须绑定公司、管理员不得绑定公司。
|
||||
- 登录时前端选择工作端口(portal),服务端校验 portal 与角色一致,
|
||||
不匹配返回 403「账号与该工作端口不匹配」。
|
||||
- 管理员创建公司账号时,初始密码等于登录账号本身并置
|
||||
`must_change_password=1`(2026-08-08 产品决定,替代随机初始密码);
|
||||
首次登录必须改密,改密前所有业务 API 返回 403。初始密码未改前
|
||||
等同账号名,因此创建用户的审计 detail 只记录公司,不重复账号名。
|
||||
- 「重置密码」仍生成随机一次性密码:重置发生在用户已改密之后,
|
||||
可预测的口令会让知道账号名的人直接接管账户。
|
||||
- 已知风险:初始密码可预测,账号创建后应尽快完成首登改密;
|
||||
创建到改密之间,知道账号名的人即可登录该账号。
|
||||
- 管理员创建公司账号时,初始密码为随机一次性密码并置
|
||||
`must_change_password=1`;首次登录必须改密,改密前所有业务 API 返回 403。
|
||||
初始密码只在创建成功响应中显示一次,永不入库明文、永不写日志;
|
||||
创建用户的审计 detail 只记录公司,不重复账号名。
|
||||
- 「重置密码」同样生成随机一次性密码并吊销既有会话。
|
||||
|
||||
## 租户隔离在服务端强制,404 优于 403
|
||||
|
||||
|
||||
Reference in New Issue
Block a user