1.4 KiB
1.4 KiB
NAS 安全模块“API Key 无效”修复记录
- 日期:2026-08-10
- 入口:
http://open.quwanzhi.com:8899/?tab=security、http://192.168.110.101:8899/?tab=security - 部署位置:公司 NAS
/volume1/docker/workphone-sdk
根因
安全模块接口会接受控制台登录会话。但 NAS 运行在 HTTP 入口时,旧代码仍按生产环境为 Cookie 固定加上 Secure 属性;浏览器会拒绝在 HTTP 页面保存该 Cookie,导致安全模块请求没有登录会话并返回“API Key 无效”。
修复
- 控制台 Cookie 改为按访问协议决定是否设置
Secure:HTTPS 或反向代理声明 HTTPS 时保持Secure;NAS HTTP 局域网入口不设置该属性。 - 保留
HttpOnly、SameSite=Strict、签名会话、会话有效期和 API Key 校验;未放宽接口认证。 - 同步
sdk/app/main.py、sdk/app/config.py到 NAS,并重建workphone-sdk容器。
验收结果
| 检查项 | 结果 |
|---|---|
| NAS SDK 容器 | healthy |
| HTTP 登录 | 200 |
| Cookie | 含 HttpOnly; SameSite=Strict,HTTP 入口不含 Secure |
| 登录会话 | authenticated: true |
| 安全模块读取 | 200 |
| 公开域名安全模块读取 | 200 |
| 公开健康接口 | healthy |
使用说明
发布后,请在上述入口刷新一次页面;如浏览器仍保留旧会话,退出后重新登录即可。进入“安全模块”不再要求手工输入 API Key。