Files
story/docs/login-session-fix-20260913.md
T
Codex Local bf1233d5df
ci / verify (push) Canceled after 0s
feat: expand companion platform, device controls, and memoir workflows
Add customer and operator login, BLE provisioning, device fleet controls, call memory, memoir generation, and refreshed family and maintenance portals. Include API contracts, migrations, firmware sources, tests, assets, and deployment documentation.
2026-10-08 10:06:44 +08:00

14 lines
1.5 KiB
Markdown

# 登录会话与短信图片验证修复
版本:`0.82.1-rc.login-fix1`。
首页加载家庭后会读取 `/api/v1/content-models`。此前此接口仅识别 Bearer 登录,而手机号使用 Cookie,导致接口返回 401,前端又据此清除整个会话。此次允许该接口的 GET 请求使用客户 Cookie,继续由服务层校验租户归属;模型创建、测试和启用仍保留运维认证及权限校验。
前端遇到业务接口 401 后,先读取 `/api/v1/me` 确认当前会话。只有会话确实失效才返回登录页;网络故障不自动退出。旧 OIDC 续期与卸载事件不再清除手机号会话。
短信登录与设备绑定的短信入口均要求图片验证。图片绑定各自浏览器会话,2 分钟过期;刷新和每次验证均使旧图失效。新的发送请求必须通过图片验证,随后才会创建短信记录和调用供应商;同一请求号的已完成发送重试只返回原结果。短信发送间隔、频率限制和验证码尝试次数仍生效。密码登录、短信登录同页切换,手机号与短信倒计时保留。
验证包括隔离 PostgreSQL/Redis 中的短信发送保护、错误与过期图片、跨会话隔离、重放拒绝及发送幂等;前端覆盖两种登录方式、设备绑定、路由返回、错误 401、旧 OIDC 事件及真正的会话过期。公网登录与页面浏览结果另保存在本次发布的验证记录中。
短信供应商仍未配置,因此未发送真实短信。此次部署不调整账号密码或家庭数据。