跳至内容
HeartBeatAgents

物理上不可绕过。零信任。

以 Markdown 查看

该架构中的每一道安全边界都是物理上不可绕过的:安全约束在智能体代码无法绕开的层级上强制执行。

能够执行代码并发起 HTTP 请求的智能体,需要一种不依赖于智能体“表现良好”的安全机制。以下七种机制共同保障这一点:

  1. 凭证代理:智能体获得的是不透明的句柄,而非真实的 OAuth 令牌;真实凭证只在 HTTP 请求发生的那一刻才会被注入。
  2. 出站策略:GET 请求被广泛允许;POST/PUT/PATCH/DELETE 仅限用于已批准的集成端点,且强制要求 HTTPS。
  3. DNS 重绑定防护:DNS 解析、IP 校验与 TCP 连接在网络栈层面原子化完成。
  4. 出站代理:所有出站流量的唯一通道,是运行在隔离 Docker 容器中、由内核强制执行 iptables 规则的出站代理。
  5. 令牌清理:每一个输出边界(LLM 上下文、日志、工具调用历史)都会被扫描,以清除其中的 OAuth 令牌、API 密钥和 JWT。
  6. WebSocket 身份验证:连接必须提供已签名、未过期、且限定组织范围的令牌才会被接受。
  7. 容器加固:以非 root 身份运行、削减 Linux 权限能力、只读根文件系统、按组织隔离容器,并强制执行资源限制。

按设计可组合

一次请求(例如向日历 API 发起写入)会依次经过这些机制中的多个环节:出站策略进行校验,凭证代理解析令牌,DNS 防护检查 IP,身份验证注入凭证,令牌清理再清洗由此产生的日志。

经过验证,而非仅是声明

密钥扫描会在每次提交时于 CI 和预提交阶段运行,此外还会定期对每一次提交和每一个标签进行全历史扫描,而不仅仅是当前的代码树。这是一项你可以要求查看证据的控制措施,而不只是一句政策声明。

开发便利性与生产环境安全在结构上被严格分离:启动时若检测到默认或占位符密钥会拒绝运行,除非通过一个明确的、会被高调记录到日志中的标志主动选择进入不安全的本地开发模式。不存在一个悄无声息的中间设置。

相关内容

  • 集成:这些边界所保护的 OAuth 2.0 + PKCE 模型
  • 技能:自我构建的技能同样处于这些相同的边界之内