微软宣布Azure Container Apps Sandboxes 发布公开预览版。这个新的 ARM 资源类型Microsoft.App/SandboxGroups能够在硬件隔离环境中运行智能体生成的非信任代码。每个沙箱可在不到一秒的时间内从 OCI 磁盘镜像启动,支持瞬时扩展到数千个实例,而且在空闲时不计费,这种计费模型契合智能体(agentic)工作负载常见的短时突发任务。
风险并不是只存在在理论上。当 LLM 生成代码并由智能体在宿主进程内执行时,执行面就成为了攻击面。看似安全的 Python 规划器(比如,抓取远程 URL、读取环境变量或使用 exec())实际上可能仅凭标准库就能窃取 API 密钥或加载任意负载。如果智能体生成的代码与宿主环境之间没有严格的边界,任何足够强大的模型都可能因一次提示词注入而导致严重的后果。构建多租户平台、CI/CD 自动化或基于 LLM 的代码解释器的团队通常需要自定义的隔离方案,常见做法包括配置有限 seccomp profile 的容器运行时或使用带有 Kata Containers 的专用 Kubernetes 集群,但这些方案需要持续的运维投入。
每个沙箱都在独立的 microVM 中运行,与宿主、平台以及同一基础设施上的其它沙箱相互隔离。开发者可以使用任何兼容 OCI 的容器镜像。沙箱从预热池(pre-warmed)中处理资源配置,确保多租户隔离并管理从启动到拆除的整个生命周期。资源模型将沙箱分组为 Sandbox Group,这些 Group 会作为一组沙箱的管理和配置边界,类似于 Container Apps Environments,但它是针对短时工作负载而设计的。每个 Sandbox Group 包含对组内所有沙箱生效的共享设置,包括网络出口策略、托管标识分配、生命周期规则和资源等级。
该隔离模型伴随着关键的生产级运维能力。基于快照的挂起与恢复可在会话期间保留完整内存和磁盘状态,这意味着智能体可以暂停多步骤的调查或已安装依赖的软件开发环境,将其缩到零副本后稍后进行恢复,而无需重新初始化。
网络出口默认是拒绝的,出站流量仅允许到显式配置允许的主机,由沙箱内部的代理层在网络边界强制执行。沙箱同时支持系统分配与用户分配的 Entra 托管标识,这使得沙箱可在不将凭据写入镜像或通过环境变量传递秘密信息的情况下对 Azure 服务进行身份验证。
微软发布了一个智能体治理工具集(Agent Governance Toolkit)。该工具集通过 agt-sandbox Python 包与 ACA Sandboxes 协作,它新增了两层强制机制,也就是 AST 扫描和工具白名单。
这些策略会在代码片段运行前生效,而出口白名单在沙箱内的网络边界执行。两者独立运作,被拒绝的调用永远到不了执行环境,同时,如果尝试向未在白名单中的主机发起出站请求,代理层就会直接失败,而与进程内的策略无关。
公告中明确列出了使用该隔离基础设施的产品,包括GitHub Copilot的Cloud Sandboxes、Foundry Hosted Agents以及Azure Container Apps Express。这对架构设计很重要,微软并非提供一个新的基于信任的抽象层,而是开放了其自身用于开发者产品的同一个隔离层。
ACA Sandboxes 的发布使其加入了一个竞争激烈的市场。2026 年 4 月,Cloudflare 推出了其 Sandboxes 产品,提供带有按需 CPU 计费和基于快照进行会话恢复的持久化隔离 Linux 环境,目标用户为已使用 Cloudflare Workers 的团队。E2B是基于 Firecracker microVM 的专用沙箱平台,已经在许多财富 500 强公司中获得采用,声称冷启动时间低于 200ms,并为需要数据驻留的团队提供“自带云”(BYOC,Bring Your Own Cloud)方案。Fly.io于 2026 年 1 月推出了Sprites,该产品默认提供持久化模型,基于 Firecracker microVM 并配备 100GB NVMe 存储,它对短暂(ephemeral)运行的方式提出了质疑,认为重建状态会浪费延迟。
ACA Sandboxes 的差异点在于其原生的 Azure 集成,而不仅仅是沙箱性能。使用 Azure 的团队可以通过现有工具访问 Entra 标识服务、ARM 原生资源管理和出口控制,受益于支撑 GitHub Copilot 的相同基础设施,它无需自行管理编排层。对于不在 Azure 上的团队,或需要 GPU 密集型的工作负载、愿意采用 BYOC 方案或偏好开源隔离工具的团队,专用提供商仍能提供更高的灵活性。
查看英文原文: Run Untrusted AI Agent Code Safely with Azure Container Apps Sandboxes





