Skip to content

连接外部系统

English | 中文

Agent 能接触真实系统时才有用,也才有风险。本指南用 LIMENORA 作为受治理边界的模式。

直接连接的问题

如果 Agent 可以直接调用 API:

  • 凭据进入提示或配置;
  • 出口目标不受控;
  • 策略被绕过;
  • 证据分散;
  • 被入侵的 Agent 有直接出口。

网关集中边界并让它可观测。

模式

Agent / 工作流 → LIMENORA 网关 → 外部 API / MCP / Webhook / 事件总线
                         │
                         ├─ 身份与策略
                         ├─ 目标白名单
                         ├─ 凭据注入
                         └─ 证据

1. 定义目标

列出 Agent 可以到达的外部系统并分类:

  • 只读 vs 写入;
  • 内部 vs 外部;
  • 敏感 vs 公开;
  • 同步 vs 事件驱动。

从只读和小白名单开始。

2. 把凭据移到网关

Agent 不应持有长期凭据。网关在边界注入,按目标与请求限定范围。

检查:

  • 密钥存在哪里;
  • 如何轮换;
  • 是否出现在日志或追踪;
  • Agent 能否外泄。

3. 在边界执行策略

网关转发前应咨询策略:

  • 该身份是否允许该目标?
  • 该操作是否允许?
  • 是否需要审批?
  • 是否超过速率或成本限制?

拒绝应产生证据,而不只是错误。

4. 记录跨越

每次请求记录:

  • 身份与权限;
  • 目标与操作;
  • 策略决定;
  • 请求元数据(不必是完整载荷);
  • 响应状态;
  • 关联 ID。

这是边界成立的证据。

5. 处理失败

  • 超时与重试;
  • 幂等键;
  • 熔断;
  • 事件死信;
  • 网关重启后的恢复。

网关是可靠性架构的一部分,不只是安全。

清单

  • [ ] Agent 没有直接出口。
  • [ ] 目标在白名单。
  • [ ] 凭据被注入,而非嵌入。
  • [ ] 策略在边界评估。
  • [ ] 请求与决定被记录。
  • [ ] 有速率与成本限制。
  • [ ] 失败与重试行为已定义。
  • [ ] 网关被监控,可撤销。

反模式

  • 把 API key 放进系统提示。
  • 让 Agent 调用任意 URL。
  • 记录包含密钥的完整载荷。
  • 网关转发但不做策略。
  • 对“内部”系统认为网关可选。

下一步