--- title: "沙箱机制" description: "即使命令被允许执行,也不意味着它可以为所欲为" --- {/* 本章目标:解释沙箱的作用和原理 */} ## 权限之外的第二道防线 权限系统决定"这条命令能不能执行",沙箱决定"执行时能做到什么程度"。 即使一条命令通过了权限审批,沙箱仍然可以限制它的行为: | 限制维度 | 说明 | |----------|------| | **文件系统** | 只能访问项目目录及其子目录 | | **网络** | 可以禁止或限制网络访问 | | **进程** | 限制可启动的子进程 | | **时间** | 超时自动终止 | ## 何时启用沙箱 沙箱不是默认对所有命令生效——它根据风险评估动态决定: - 用户显式请求禁用沙箱的命令(`dangerouslyDisableSandbox`)不走沙箱 - 已通过安全规则白名单的命令可以跳过沙箱 - 未知命令或高风险命令强制进入沙箱 ## 沙箱的实现思路 不同平台使用不同的沙箱技术: - **macOS**:利用系统级沙箱机制限制文件和网络访问 - **Linux**:基于命名空间和 cgroup 的进程隔离 - 沙箱策略由系统自动选择,用户不需要手动配置