内容提要
四大云服务商(AWS、谷歌云、Azure、Cloudflare)近期均推出沙箱服务,用于隔离运行AI代理生成的代码。各厂商采用不同技术:AWS用Firecracker微虚拟机,谷歌用gVisor,Azure用Hyper-V,Cloudflare用容器。这些沙箱提供安全执行环境,但存在区域、时长等限制,且无法控制代码对凭据的使用,治理仍是独立挑战。
延伸解读
四大云厂商的隔离技术路线分歧
AWS、谷歌云、Azure和Cloudflare在沙箱实现上选择了不同的技术栈:AWS用Firecracker微虚拟机,谷歌在GKE和Cloud Run中分别采用gVisor和轻量隔离边界,Azure基于Hyper-V,Cloudflare则用容器加独立VM。这些差异反映了各厂商对安全边界位置的不同理解,也意味着用户在选择时需考虑与现有架构的兼容性。
沙箱的实用限制与成本考量
各厂商的沙箱服务存在具体限制:AWS Lambda微虚拟机仅支持Graviton处理器,且仅在五个区域可用,最长运行八小时;Cloud Run沙箱共享父实例的CPU和内存,可能影响主服务性能。这些限制可能影响工作负载的迁移和扩展,用户需评估自身需求是否匹配。
沙箱之外的治理挑战
沙箱仅提供隔离执行环境,并不能控制代码对凭据的使用。开发者主动提供的凭据可能被恶意代码滥用,治理仍需独立的安全策略。文章指出,隔离边界只是安全问题的“便宜一半”,真正的挑战在于如何监管代码在安全容器内的行为。
Q&A
AWS、谷歌云、Azure和Cloudflare的代理沙箱分别基于什么技术?
AWS使用Firecracker微虚拟机,谷歌云使用gVisor(GKE Agent Sandbox)和Cloud Run的轻量隔离边界,Azure使用Hyper-V边界,Cloudflare使用容器并在各自VM中隔离。
AWS Lambda MicroVMs沙箱有哪些限制?
AWS Lambda MicroVMs运行在Graviton处理器上,仅支持五个区域,且最长运行时间为八小时。
谷歌云Cloud Run沙箱如何工作?
Cloud Run沙箱通过--sandbox-launcher标志在容器内挂载沙箱二进制文件,应用通过子进程调用它。沙箱共享父实例的CPU和内存,不额外收费。
Azure的沙箱服务有什么特点?
Azure Container Apps动态会话自2024年起基于Hyper-V边界运行,微软报告称Copilot每天消耗超过40万个这样的会话。
Cloudflare沙箱是如何构建的?
Cloudflare沙箱构建在容器之上,每个沙箱在独立的VM中隔离,并通过Workers和Durable Objects进行控制。
这些云沙箱在安全方面有什么共同点和局限?
共同点是都提供隔离环境运行不可信代码,但无法控制代码对开发者提供的凭据的使用,治理仍需单独处理。
为什么说沙箱是“未完成的商品化”?
因为各厂商的沙箱都有特定限制,如区域、时长、资源竞争等,这些限制使得多云中立沙箱仍有市场,商品化并未完全实现。