登录
No.59核心2 条来源

沙箱Sandbox

课堂投屏

一句话

沙箱是一个受限的运行环境,程序在里面只能访问被允许的文件、网络和系统资源。

大白话

沙箱像给小孩围起来的沙坑:在围栏里面怎么挖、怎么堆都行,沙子不会撒到客厅,也碰不到厨房里的刀。

比喻的边界

沙坑的围栏看得见;软件沙箱的边界是配置出来的,配错了或有漏洞,程序照样能越过去,所以它只能降低风险,不能保证绝对安全。

拿去就能用

开始做

我要运行,但我不完全信任它的来源。帮我在沙箱里运行,只开放,其他文件和网络都禁止,先给我看配置,再说明怎么确认限制真的生效。

还差:要运行的代码、允许的资源,发给 AI 前记得换掉

出错了

程序在沙箱里运行时报“权限不足”,错误贴在下面,路径里的用户名已换成 ***。帮我判断是哪条限制拦住了它,只放开完成任务必需的那一项,放开前先告诉我影响,等我确认。

想做深

我的网页要预览用户自己写的 HTML 片段。帮我用 iframe 的 sandbox 属性把它隔离起来,默认全部禁止、只开必需的权限,并说明每开放一项会带来什么风险。

别这样说 → 这样说

别这样说

开个沙箱,这样随便跑什么都安全了。

这样说

我想让 AI 编程工具帮我跑测试和装依赖,但不希望它读到项目外的文件或随意联网。帮我配置沙箱,只允许读写当前项目目录、只能访问 npm 官方源,并告诉我怎么验证限制生效了。

差别:说清了允许什么、禁止什么,并要求验证边界。

容易误解:

误解放进沙箱就绝对安全,可以随便跑不可信的代码。

其实是沙箱只能降低风险:边界可能配得过宽,沙箱本身也可能有漏洞;要按最小权限配置,并亲自验证文件和网络限制真的生效。

展开专业理解

沙箱通过限制文件系统、网络和系统权限来隔离程序。比如 AI 编程工具可以让命令只在项目目录内读写、只访问允许的域名;浏览器里给 iframe 加上空的 sandbox 属性会启用全部限制,再按需逐项放开。每放开一项都会扩大风险面,被放开的网络访问也可能成为数据外泄的通道。

来源

  1. Claude Code 文档:沙箱 核对于 2026-09-26
  2. MDN:iframe 元素 核对于 2026-09-26