Codex 安全与企业管理

Codex 能在本地执行 Shell、读写文件、联网、操控 GUI,因此安全是产品核心。本章先回顾个人安全实践,再展开企业/团队的托管管控(requirements.toml、规则、插件治理、审计)。

权限的两个维度(沙箱 + 审批)与三个预设见 权限设置;命令级控制见 规则与钩子


一、纵深防御:四道防线

① 沙箱      限定技术上能读写/联网的范围
② 审批      越界时停下来问人
③ 规则      对具体命令 allow / prompt / forbidden
④ 钩子      在关键时刻用脚本拦截/审计

层层叠加:前两道粗粒度、后两道精细化,企业还可在最外层用 requirements.toml 强制底线。


二、个人安全实践

推荐默认组合

# ~/.codex/config.toml
sandbox_mode = "workspace-write"
approval_policy = "on-request"

对应桌面应用的 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


四、规则与钩子的强制下发

机制企业用法
Rules(.rules管理员强制 forbidden/prompt 关键命令;codex execpolicy check 校验
Hooks(托管)来自 requirements.toml 的钩子绕过信任审查,用于安全策略、审计、密钥检测

详见 规则与钩子


五、MCP 与插件治理

  • MCP allowlist:只允许白名单内的 server

    allowed_mcp_servers = ["github", "linear"]
  • 插件市场支持企业控制,可限制可安装的插件范围

  • 连接器(Apps) 用授权账号身份操作,遵循最小权限

  • MCP token / 连接器授权应使用最小权限与可轮换的凭据

集成与连接


六、自动化与 CI 的安全

  • 自动化遵守沙箱设置;full access 的后台自动化风险高,谨慎使用
  • CI 用只读 token + 隔离 runnercodex exec --ask-for-approval never 必须配严格沙箱
  • 用独立 CODEX_HOME 隔离 CI 机器人配置

自动化与 CI/CD


七、审计与可观测

codex -c log_dir=./.codex-log     # TUI 日志:codex-tui.log
codex doctor                       # 本地诊断报告
  • 用钩子把会话事件送到外部审计系统
  • 审查工具调用序列、AGENTS.md 加载情况

八、安全清单

  • 仓库无 .env/密钥提交;AGENTS.md 写明勿读生产密钥
  • 默认 workspace-write + on-request
  • 敏感操作前 git diff + 人工 commit(或独立 worktree)
  • 关键命令配 forbidden/prompt 规则
  • MCP/连接器最小权限,启用 allowlist
  • CI 用只读 token、隔离 runner、严格沙箱
  • 托管设备用 requirements.toml 强制底线
  • Computer Use 仅授权必要应用

下一步