跳转到主要内容

代理隔离最佳实践:入门指南(私密测试版)

对于我们网络验证计划中的客户,我们在 API 中提供了一个新的沙箱逃逸分类器,用于监控和减少不需要的行为。本文概述了可供您使用的指导,并提供了每个资源的链接。

此分类器处于私密测试版。

本指导按原样提供,仅供参考。它描述的是建议,而非要求。这些实践应该能降低风险,但可能无法防止所有超出范围的操作。您仍需负责选择、测试和运行适合您环境的控制措施。

最佳实践概述

  • 在硬件虚拟化沙箱内运行每个自主代理。参考设计在内部网络上为每个代理使用一个 microVM(带 Firecracker 的 Kata Containers)(请参阅 沙箱隔离)。

  • 交互式使用(由人类批准每个操作或在 Claude Code 的自动模式下监督代理)风险较低,但我们仍建议使用沙箱。自动模式本身是尽力而为的检查,不能替代沙箱隔离。如果您在没有沙箱的情况下运行交互式、仅文件的工作,请审查每次写入操作,并且不要运行代理编写的任何内容,除非您已阅读过。

  • 切勿将包含凭证的路径挂载到代理的环境中。也要将模型-API 凭证保留在代理的环境之外:让单独的代理在代理的 API 请求中添加凭证(请参阅 沙箱隔离中的凭证代理部分)。

  • 在沙箱内以自动权限模式运行 Claude Code 代理作为额外检查(请参阅 自动模式)。其分类器可能会拒绝某些合法的安全工作;该文章解释了预期情况以及如何调整它。

  • 至少保留 30 天的代理记录和代理日志,在运行期间和运行后审查它们(请参阅 代理记录的离线监控),如果您看到代理在其范围之外行动,请告知您的 Anthropic 账户团队。

文章概述

该指导涵盖五个方面:

  • 沙箱隔离。为什么自主代理需要强隔离、参考设计如何隔离它们,以及如何确定和监督需要网络访问的参与。

  • 代理权限:自动模式。为什么代理应该在权限分类器下运行、它可以和不能依赖什么,以及要告诉分类器什么。

  • 提示注入。目标中的文本如何可能引导代理,以及如何限制其影响。

  • 代理记录的离线监控。在代理记录和代理日志中要查找的内容、如何执行此操作,以及保留多长时间。

  • 在线监控:API 响应中的沙箱逃逸分数。对于您直接针对 Messages API 运行的代理:来自沙箱逃逸分类器的每个请求分数、如何请求它,以及如何读取它。

此指导如何映射到最佳实践

最佳实践

涵盖位置

您的操作

沙箱和网络隔离

在自己的 VM 中运行每个代理,使用 强化主机,默认拒绝出站流量,并将模型-API 凭证保留在沙箱外的代理中。

参与前验证

审查配置并在每个新主机上、每次沙箱更改后以及每个新模型后运行受监督的逃逸测试。确认目标构建并且代理具有所需的工具。

记录保留和审查

为每个代理阶段编写记录,按计划扫描记录,阅读扫描标记的内容,并 至少保留 30 天的记录和日志。

沙箱逃逸分类器

从您直接针对 Messages API 运行的代理请求分数,并使用它来决定首先阅读哪些记录。它不适用于在 Claude Code 中运行的代理,或在 Amazon Bedrock 或 Google Cloud 的 Agent Platform (Vertex AI) 上运行的代理。

自动模式

在自动模式下运行 Claude Code 代理,并 向分类器描述您的环境。

网络范围界定

仅允许列出范围内的目标,并优先选择暂存或副本环境。

明确的范围设置

在您给每个代理的说明中说明范围。

代理工具使用

在代理和目标之间放置一个可观察的代理或工具。

人工监督

监视有网络访问权限的运行,限制每个代理的轮次和运行时间,并知道如何停止代理。

高风险目标

不要将自主代理指向实时系统,其故障可能危及安全或关键服务。

哪些检查适用取决于您的代理如何运行:

如果您的代理运行

自动模式

API 分数

记录审查

在 Claude Code 中

是

否。Claude Code 不显示分数

是

直接针对 Messages API

否。自动模式是 Claude Code 功能

是,在第一方 Claude API 上

是

本指导中的监控(记录审查和 API 分数)查找尝试离开沙箱或扩大网络访问的尝试。它不检测留在沙箱内但超过了允许到达的主机上的参与的代理。

提示注入不是最佳实践之一,但当代理读取组织外的人编写的内容时,它很重要。

报告超出范围的行为

如果代理探测其沙箱或网络隔离,或在参与范围之外行动,请通知您的 Anthropic 账户团队,除了您自己的事件流程所需的任何内容。命中时的操作描述了如何停止代理以及首先收集什么。

这是否解答了您的问题?