Codex 安全与企业管理
Codex 能在本地执行 Shell、读写文件、联网、操控 GUI,因此安全是产品核心。本章先回顾个人安全实践,再展开企业/团队的托管管控(requirements.toml、规则、插件治理、审计)。
权限的两个维度(沙箱 + 审批)与三个预设见 权限设置;命令级控制见 规则与钩子。
一、纵深防御:四道防线
层层叠加:前两道粗粒度、后两道精细化,企业还可在最外层用 requirements.toml 强制底线。
二、个人安全实践
推荐默认组合
对应桌面应用的 Default / Auto 预设:工作区内自动干活,越界才问。
⚠️ 慎用 --yolo
--dangerously-bypass-approvals-and-sandbox 同时跳过沙箱与审批,仅在可一键销毁的隔离 VM/容器使用,禁止在主开发机默认开启。
网络
- 本地执行默认网络受限;
npm install、拉 API 会触发审批或被规则拦截 - 用规则对具体命令/域名做 allowlist,而非整体放开
Computer Use
- 屏幕录制/辅助功能是全局权限,逐应用审批控制访问范围
- 涉及账号/支付时全程在场,敏感工作用第二设备,见 电脑操控
三、企业托管:requirements.toml
托管设备上,组织可用 requirements.toml 下发不可被本地覆盖的强制策略,例如:
- 禁止
approval_policy = "never" - 禁止
sandbox_mode = "danger-full-access" - 强制特定规则(禁止某些命令)
- 下发托管钩子(无需用户信任即生效)
它位于配置分层的最高优先级(见 配置与定制)。参考官方 Managed configuration。
四、规则与钩子的强制下发
详见 规则与钩子。
五、MCP 与插件治理
-
MCP allowlist:只允许白名单内的 server
-
插件市场支持企业控制,可限制可安装的插件范围
-
连接器(Apps) 用授权账号身份操作,遵循最小权限
-
MCP token / 连接器授权应使用最小权限与可轮换的凭据
见 集成与连接。
六、自动化与 CI 的安全
- 自动化遵守沙箱设置;full access 的后台自动化风险高,谨慎使用
- CI 用只读 token + 隔离 runner,
codex exec --ask-for-approval never必须配严格沙箱 - 用独立
CODEX_HOME隔离 CI 机器人配置
见 自动化与 CI/CD。
七、审计与可观测
- 用钩子把会话事件送到外部审计系统
- 审查工具调用序列、AGENTS.md 加载情况
八、安全清单
- 仓库无
.env/密钥提交;AGENTS.md 写明勿读生产密钥 - 默认
workspace-write+on-request - 敏感操作前
git diff+ 人工 commit(或独立 worktree) - 关键命令配
forbidden/prompt规则 - MCP/连接器最小权限,启用 allowlist
- CI 用只读 token、隔离 runner、严格沙箱
- 托管设备用
requirements.toml强制底线 - Computer Use 仅授权必要应用