Per-caller connections:凭据所有权与运行时主体绑定
Per-caller connections:凭据所有权与运行时主体绑定
为什么重要
知识轴:MCP Gateway / harness-runtime / sandbox-security。 企业工具代理常用共享service key,权限只告诉agent“能做什么”,不能证明“谁发起”。LangChain官方2026-09-09说明 Managed Deep Agents (MDA) v0.7.0+的Connections:部署时只定义credential slug与owner,运行时按实际caller解析;09-24的v0.8说明又把用户级memory单独划界。这提供可迁移的入口身份→凭据所有者→工具effect合同,而不是让用户改用MDA。官方产品示例非独立安全审计。^[raw/articles/langchain-connections-per-caller-identity-text-2026-09-26.md]
一阶机制
- 两条正交轴。 owner分agent-owned/user-owned,凭据分static secret/OAuth grant;不能以“用了OAuth”推导“按人隔离”。前者可供全员共享web search,后者在同一部署中为不同caller选择不同Github权限/审计作者。
connections.get(slug, {"type":"user"})查询已有登记的连接,所有权在创建时固定;不能在工具函数里临时把共享凭据声明成user-owned。^[raw/articles/langchain-connections-per-caller-identity-text-2026-09-26.md] - 在运行时完成授权,而非把密钥塞入prompt。 工具从workspace凭据仓读取;未授权/过期时文档称暂停run并请求grant,再续跑。用户自带OAuth app的GitHub示例声明scope
repo会替换默认read:user,不是累加;经MCP连接的Linear示例可走server OAuth发现与动态注册,作者明确提示实际拿到read+write,不能假设自动最小权限。多服务缺少grant会在首轮model前合并一次interrupt,减少半途执行一部分的风险,但不能当跨服务事务性回滚。^[raw/articles/langchain-connections-per-caller-identity-text-2026-09-26.md] - 共同验收。 同一agent/slug/不同caller分别查询私有资源并执行有迹可查的写入,核后端实际actor、作用域和审计;无授权caller不得借用先前用户grant。若入口为群聊、定时任务或A2A peer,主体不天然等于真实人;需要明确是否拒绝、改走agent-owned低权限或要求确认。v0.8官方文档对user-level memory的默认限制:Slack DM允许,group/HTTP默认拒绝;这只说明产品的默认记忆隔离,不能推出任一channel凭据的实际授权安全。^[raw/articles/langchain-connections-per-caller-identity-text-2026-09-26.md]
与wiki和Hermes实践的关系
MCP-Gateway-Runtime 已记录入口/出口凭据分离,A2A-Agent2Agent-Protocol 区分peer身份、task owner与用户授权;本例补足凭据owner和caller绑定发生在何时。在Hermes / llm-wiki cron场景可把执行回执字段收敛为 {request_source, authenticated_caller, effective_principal, credential_owner, target_audience, scope, approval, effect, audit_ref};cron应有独立低权限service principal,飞书群聊或A2A委托不能继承个人私有OAuth。是验收建议,没有在用户生产环境部署或读取凭据。
失败模式与证据边界
共享key虽可审计cron身份却难区分真实人;type:user依赖可靠入口身份映射,缺失/错映射会错人调用;OAuth scope覆盖默认值、MCP服务端协商过宽、grant过期与多工具中间副作用都要专门测试。LangChain称轮换无需重新部署只是其受管工作区设计,不能直接推及别家gateway。本文阅读官方完整文字层但未调用LangSmith实例、读取SDK源码或验证生产隔离。此案例值得入库因为给出双轴数据模型、明确的暂停点和可设计负例,不是仅一则release新闻。
写入记录
- 2026-09-26 09:03 CST:从官方原文及v0.8说明提炼caller/owner正交关系、授予/暂停边界和群聊/cron/A2A隔离验收。