2 Commits

Author SHA1 Message Date
ymq
9bb1c5ce65 security: LLM 代理端点加失败限速(防 token 枚举)
窗口 300s 内鉴权失败 >= 20 次即拒绝,不再查库(避免枚举放大 DB 压力)。
限速键取 token 前 12 字符,内存不留全量密钥;条目超 5000 清理过期窗口。
2026-08-25 14:47:24 +08:00
ymq
106a600c45 feat(llm-proxy): 内部 LLM 代理 + 短期 token,真 api_key 永不下发运行环境
运行环境(agent run_shell 子进程/bwrap 沙箱/远程目标机/被开发的 AI 应用)需要调 LLM 时,
不下发真实模型 key,改为签发短期 token(绑定 org_id+project_id+task_id,带过期/调用上限/可吊销),
运行环境用 token 当 api_key 调本平台 OpenAI 兼容代理端点;真 key 只在服务进程内存解析。

- create_llm_token / verify_llm_token / revoke_llm_token / revoke_task_tokens
- proxy_chat_completion: 按 token 绑定 org_id 解析真 key(机构隔离) + 转发 + 用量回填
- list_llm_tokens: 审计用,不返回 token 明文
2026-08-25 14:11:29 +08:00