18-Codex安全模型-沙盒模式全解析

发布时间:2026/7/2 21:35:57

18-Codex安全模型-沙盒模式全解析 18 — Codex 安全模型:沙盒模式全解析系列导读| 本文是 Codex 安全与权限系列的第四篇(共四篇),全面剖析 Codex CLI 三种内置沙盒模式的设计原理、权限边界、操作系统级实现差异以及实际配置方法。一、什么是沙盒?沙盒(Sandbox)是 Codex 安全模型的基石。它通过操作系统级的隔离机制,将 AI Agent 的执行环境与宿主系统隔离开来,确保即使 Agent 执行了恶意或错误的命令,也不会对用户的系统造成实质性损害。Codex CLI 使用沙盒化子进程来运行 Agent 生成的所有命令——无论是编译代码、安装依赖、读取文件还是执行脚本,全部都在沙盒中完成。这意味着:Agent 无法访问沙盒以外的文件(除非显式授权)Agent 无法建立超出白名单的网络连接Agent 无法执行超出允许范围的系统调用沙盒不是可选项,而是默认强制执行的安全层。二、三种沙盒模式详解Codex CLI 定义了三种沙盒模式,按安全等级从高到低排列:1. read-only(只读模式)这是默认安全模式,也是限制最严格的模式。维度权限文件系统可读取所有文件,但禁止写入任何文件网络完全禁止(出站和入站均被阻止)进程执行可执行命令,但无法持久化任何输出或修改适用场景:代码审查与阅读快速问题解答(如 “这段代码有什么问题?”)探索性分析(查看目录结构、读取日志)第一次与不信任的 Agent 交互为什么这是默认模式?因为首次安装 Codex CLI 后,用户尚未配置白名单或添加信任目录,read-only 确保 Agent 不会在用户不知情的情况下修改任何文件。配置方式:# 显式指定只读模式codex run--sandboxread-only# 在 codex.json 中配置{"sandbox":{"mode":"read-only"}}2. workspace-write(工作区写入模式)这是日常开发最常用的模式,也是多数用户在完成基础配置后实际使用的沙盒等级。维度权限文件系统可读取所有文件;仅可写入工作目录(working directory)及其子目录网络默认禁止,可通过allowed_domains白名单开放进程执行可执行命令,输出可写入工作区适用场景:日常编码和项目开发生成代码文件、修改项目文件安装 npm / pip / cargo 等包管理工具(需要额外网络配置)运行测试和构建脚本核心安全设计:Agent 可以随心所欲地修改工作区内的文件,但无法触碰工作区之外的任何文件——这意味着用户的~/.ssh/、~/.aws/、系统配置文件等始终受到保护。配置方式:{

相关新闻