安全风险与沙箱边界
为什么智能体的设置对安全至关重要,以及 Managed Agents 沙箱能做什么、不能做什么。
本页说明为什么保护您的 Managed Agents 部署中的设置很重要,以及沙箱能做什么、不能做什么。
为什么这很重要
智能体读取的内容中隐藏的指令可能会操纵智能体。这被称为 "prompt injection"(提示注入)。Claude 本身对此具有抵御能力,但模型行为并不是一种安全控制措施。保护您的 Managed Agents 部署中的设置可以在攻击尝试成功时限制其影响。
Claude 在持续努力完成您交给它的任务时,也可能采取您未预料到的步骤。例如,它可能会使用其能够访问的工具或凭据来绕过障碍。同样的设置可以限制此类步骤能够触及的范围,并且离线审查器可以在事后标记它。
| 可能出现的问题 | 示例 | 控制措施 |
|---|---|---|
| 不受信任的输入操纵智能体 | 一张工单要求智能体取消所有未完成的订单 | 最小工具集、让不受信任的输入远离强大的工具、对有风险的操作进行审批 |
| 沙箱中的代码可以使用凭据 | 智能体被诱骗运行的脚本将智能体的密钥发送到外部主机,或使用该密钥读取所有客户的订单 | 将凭据保存在保管库中、受限网络、对有风险的操作进行审批 |
| 开放的网络导致数据外泄 | 一条 bash 命令将文件发送到外部主机 | 受限网络、web_fetch 域名列表 |
| Claude 采取了您未预料到的步骤 | 为了绕过障碍,它使用了其能够访问的工具或凭据 | 保护您的 Managed Agents 部署中的设置。离线审查器可以在事后标记该步骤 |
这些设置可以降低风险,但无法消除风险,因此不要将绝不能离开沙箱的数据放入沙箱中。智能体仍然可以将其被允许读取的数据放入自己的回复或工具输出中。请在签发密钥的服务处限制该密钥的权限,因为这些设置不会限制密钥权限。这些设置不会保护您的自定义工具、您的 MCP 服务器或您的自托管基础设施。
沙箱能做什么、不能做什么
Managed Agents 在设计上将智能体循环、会话历史和保管库密钥保存在沙箱之外。有关设计背景,请参阅 Scaling Managed Agents。
| 组成部分 | 运行位置 | 限制因素 |
|---|---|---|
| 智能体循环 | Anthropic 的服务器 | 您设置的工具集、权限策略和预算 |
bash 和文件工具 | 沙箱。在云环境中,每个会话都有自己的隔离 Linux 容器 | 环境网络、工具集和权限策略 |
web_search 和 web_fetch | Anthropic 的服务器 | 工具自身的域名列表,以及在 limited 云环境中该环境允许的主机。web_fetch 也只会打开已在会话中出现过的 URL |
| 保管库密钥 | 沙箱之外。MCP 凭据永远不会进入沙箱。对于环境变量凭据,代码看到的是一个占位符 | 对于 MCP 凭据,是其所对应的 MCP 服务器 URL。对于环境变量凭据,是该凭据允许的主机、其注入位置以及环境允许的主机 |
| 会话历史 | Anthropic 的服务器,直到您删除该会话 | 工作区的 API 密钥、Claude Console 中的 Developer 和 Admin 角色,以及会话删除 |
| 自定义工具 | 您的应用程序 | 您的代码 |
在云环境中,会话之间不共享文件系统状态。附加到多个会话的记忆存储会在这些会话之间共享。
这些限制不能相互替代。例如,限制环境的主机并不能阻止智能体在您允许的主机上使用凭据。
Was this page helpful?