新能力和新漏洞,永远一起到来。
今天联网检索从零推进到了混合检索、缓存、限流、可观测全套。同一天,修了它带来的19个安全问题。
这不是意外,是规律。
一、联网检索:从能查到查得好
接入联网能力,第一步通常是"先跑起来"------把检索服务连上,能返回结果就算完。
但"能查"和"查得好"之间有一段不小的距离。今天把这段距离压缩在了一天之内。
第一阶段接入三个主流检索源,补全兜底逻辑,确保其中一个挂了还能切换;第二阶段加上缓存和限流,同一个问题不重复消耗检索额度,高频请求不把服务打垮;第三阶段是把检索结果真正 "接地"------把查回来的内容和模型的推理深度整合,而不是简单拼接,对标的是 Perplexity 那类产品的做法。
三个阶段的提交时间戳前后不超过半天。每个企业现在可以配置自己的检索服务密钥,按组织隔离,不共用同一套配额。

二、安全债要跟功能一起还
联网检索上线之后,紧接着修了 19 项安全缺陷。
其中影响面最大的一类叫服务端请求伪造:你让系统帮你查一个网页,如果没有限制,它可能被构造成去访问内部地址,把内网服务暴露出来。这类问题在给系统加上"主动访问外部网络"能力的那一刻就自动出现了。
除此之外还有凭证泄露和缓存隔离的问题------不同租户的查询结果不能互相污染,密钥不能在日志或响应里漏出去。
同一天还修了管理后台的一个权限绕过问题:原来的来源校验用的是前缀匹配,构造特定域名可以绕过去,这次改成了精确比对。
这些修复的共同方向是一致的:不确定时默认拒绝,而不是默认放行。 技能沙箱未配置时也是同样的处理------没有沙箱环境就不执行,而不是跳过安全检查继续跑。

三、开关一拨,火花四溅
多租户行级隔离在前几期已经写了很多:加字段、改查询、交叉审查、补注入。今天在电商环境里正式把它打开了。
开关一拨,立刻暴露出一批之前没有发现的问题。
第三方登录的回调在写用户角色时被隔离层拒绝,返回了 500;消息、审计、用量数据的落库链路也在某些节点没有正确注入租户上下文,同样被拒绝;超管在没有选择目标企业的情况下操作,会话写入报外键冲突。
这些问题在只读或者跳过隔离层的时候都是好的,直到真正开启严格隔离才浮出来。修完这一批,隔离层才算真正落地,不只是"代码里有",而是"跑起来也没问题"。

四、Agent 能多做一件事了
今天加了一个文生图工具。Agent 现在的能力组合是:查(联网检索、知识库召回)、想(推理链)、做(代码执行、系统操作)、画(生成图片)。这几件事在一次对话里可以混着来。
文生图的超时是个小插曲:实测出图要两分钟出头,原来的超时配置按照普通接口来设置,直连出网之后余量才够用,改过之后才稳定。这种"功能能用但时序不对"的问题,只有真跑才会发现。

功能、安全、多租户、工具------今天四条线同时推进。
这,是第四十六天。
**《从0到1:企业级AI项目迭代日记》**记录一个企业级 AI 项目从创意、架构到落地的真实过程。不讲神话,只记录进化。
如果你也在做企业 AI 落地,欢迎留言来聊。或者,把这篇转发给一个正在踩同样坑的朋友。