安全、审批与管理

先分清风险等级
#LessuqUovmZm text { white-space: pre; }#LessuqUovmZm .fb0 { stroke: var(--N900-FG, 0.15); }#LessuqUovmZm .fb0 {stroke: rgba(31,35,41, 0.15)}#LessuqUovmZm .fx0 { stroke-miterlimit: 10; }#LessuqUovmZm .fx0 {stroke-miterlimit: 10}#LessuqUovmZm .fa1 { fill: rgb(187, 191, 196); }#LessuqUovmZm .fa1 {fill: rgb(187, 191, 196)}#LessuqUovmZm .fx1 { font: 400 12px MonospacedNumber, LarkHackSafariFont, LarkEmojiFont, LarkChineseQuote, -apple-system, BlinkMacSystemFont, "Helvetica Neue", Tahoma, "PingFang SC", "Microsoft Yahei", Arial, "Hiragino Sans GB", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; }#LessuqUovmZm .fx1 {font-style: normal}#LessuqUovmZm .fx2 { text-anchor: middle; }#LessuqUovmZm .fx2 {text-anchor: middle}#LessuqUovmZm .fx3 { dominant-baseline: central; }#LessuqUovmZm .fx3 {dominant-baseline: central}#LessuqUovmZm .fx4 { stroke: none; }#LessuqUovmZm .fx4 {stroke: none}#LessuqUovmZm .fc0 { fill: var(--text-caption); }#LessuqUovmZm .fc0 {fill: #646a73}#LessuqUovmZm .fa2 { fill: var(--text-link-disabled); }#LessuqUovmZm .fa2 {fill: rgb(187, 191, 196)}#LessuqUovmZm .fa3 { fill: rgb(225, 234, 255); }#LessuqUovmZm .fa3 {fill: rgb(225, 234, 255)}#LessuqUovmZm .fx5 { font: 700 18px MonospacedNumber, LarkHackSafariFont, LarkEmojiFont, LarkChineseQuote, -apple-system, BlinkMacSystemFont, "Helvetica Neue", Tahoma, "PingFang SC", "Microsoft Yahei", Arial, "Hiragino Sans GB", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; }#LessuqUovmZm .fx5 {font-style: normal}#LessuqUovmZm .fx6 { text-anchor: start; }#LessuqUovmZm .fx6 {text-anchor: start}#LessuqUovmZm .fx7 { dominant-baseline: alphabetic; }#LessuqUovmZm .fx7 {dominant-baseline: alphabetic}#LessuqUovmZm .fc1 { fill: rgb(0, 0, 0); }#LessuqUovmZm .fc1 {fill: rgb(0, 0, 0)}#LessuqUovmZm .fx8 { font: 400 16px MonospacedNumber, LarkHackSafariFont, LarkEmojiFont, LarkChineseQuote, -apple-system, BlinkMacSystemFont, "Helvetica Neue", Tahoma, "PingFang SC", "Microsoft Yahei", Arial, "Hiragino Sans GB", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; }#LessuqUovmZm .fx8 {font-style: normal}#LessuqUovmZm .fb1 { fill: var(--N900-FG, 0.15); }#LessuqUovmZm .fb1 {fill: rgba(31,35,41, 0.15)}#LessuqUovmZm .fa4 { fill: var(--bg-body); }#LessuqUovmZm .fa4 {fill: #fff}ABC12345风险等级例子建议策略低中高极高读取 README、解释函数、生成文档草稿修改代码、运行测试、格式化文件安装依赖、访问外网、删除文件、迁移数据库生产发布、账单、权限、客户数据、凭据轮换可只读自动执行限定工作区写入,保留 diff review每一步都需要明确审批保留人工操作或双人复核
沙盒模式怎么理解
沙盒控制 Codex 能访问什么位置、能不能写文件、能不能联网。学习时按三种场景理解:
#VidowAecCOtk text { white-space: pre; }#VidowAecCOtk .fb0 { stroke: var(--N900-FG, 0.15); }#VidowAecCOtk .fb0 {stroke: rgba(31,35,41, 0.15)}#VidowAecCOtk .fx0 { stroke-miterlimit: 10; }#VidowAecCOtk .fx0 {stroke-miterlimit: 10}#VidowAecCOtk .fa1 { fill: rgb(187, 191, 196); }#VidowAecCOtk .fa1 {fill: rgb(187, 191, 196)}#VidowAecCOtk .fx1 { font: 400 12px MonospacedNumber, LarkHackSafariFont, LarkEmojiFont, LarkChineseQuote, -apple-system, BlinkMacSystemFont, "Helvetica Neue", Tahoma, "PingFang SC", "Microsoft Yahei", Arial, "Hiragino Sans GB", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; }#VidowAecCOtk .fx1 {font-style: normal}#VidowAecCOtk .fx2 { text-anchor: middle; }#VidowAecCOtk .fx2 {text-anchor: middle}#VidowAecCOtk .fx3 { dominant-baseline: central; }#VidowAecCOtk .fx3 {dominant-baseline: central}#VidowAecCOtk .fx4 { stroke: none; }#VidowAecCOtk .fx4 {stroke: none}#VidowAecCOtk .fc0 { fill: var(--text-caption); }#VidowAecCOtk .fc0 {fill: #646a73}#VidowAecCOtk .fa2 { fill: var(--text-link-disabled); }#VidowAecCOtk .fa2 {fill: rgb(187, 191, 196)}#VidowAecCOtk .fa3 { fill: rgb(225, 234, 255); }#VidowAecCOtk .fa3 {fill: rgb(225, 234, 255)}#VidowAecCOtk .fx5 { font: 700 18px MonospacedNumber, LarkHackSafariFont, LarkEmojiFont, LarkChineseQuote, -apple-system, BlinkMacSystemFont, "Helvetica Neue", Tahoma, "PingFang SC", "Microsoft Yahei", Arial, "Hiragino Sans GB", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; }#VidowAecCOtk .fx5 {font-style: normal}#VidowAecCOtk .fx6 { text-anchor: start; }#VidowAecCOtk .fx6 {text-anchor: start}#VidowAecCOtk .fx7 { dominant-baseline: alphabetic; }#VidowAecCOtk .fx7 {dominant-baseline: alphabetic}#VidowAecCOtk .fc1 { fill: rgb(0, 0, 0); }#VidowAecCOtk .fc1 {fill: rgb(0, 0, 0)}#VidowAecCOtk .fx8 { font: 400 16px MonospacedNumber, LarkHackSafariFont, LarkEmojiFont, LarkChineseQuote, -apple-system, BlinkMacSystemFont, "Helvetica Neue", Tahoma, "PingFang SC", "Microsoft Yahei", Arial, "Hiragino Sans GB", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; }#VidowAecCOtk .fx8 {font-style: normal}#VidowAecCOtk .fb1 { fill: var(--N900-FG, 0.15); }#VidowAecCOtk .fb1 {fill: rgba(31,35,41, 0.15)}#VidowAecCOtk .fa4 { fill: var(--bg-body); }#VidowAecCOtk .fa4 {fill: #fff}ABC1234场景推荐边界用途陌生仓库分析日常实现自动化脚本只读工作区写入精确放权了解结构、生成学习路线修测试、补文档、改局部代码只允许必要命令和目录
配置变更前,先问 Codex:
代码块
Plain Text
请说明你当前准备运行哪些命令、这些命令会读写哪些路径、是否需要网络访问。先不要执行。
审批策略
审批策略决定 Codex 在执行某些命令前是否需要你确认。建议把以下行为列为需要确认:
•
删除、移动大量文件。
•
修改锁文件或依赖版本。
•
安装全局工具。
•
访问外部网络。
•
读取 .env、证书、密钥文件。
•
执行数据库迁移。
•
创建 release、tag、部署或推送生产分支。
推荐提示词:
代码块
Plain Text
涉及删除文件、安装依赖、访问网络、读取敏感文件、推送代码或部署时,请先说明理由、命令和影响范围,等我确认后再执
敏感信息处理
教程截图和开源知识库尤其要注意遮挡:
•
邮箱、用户名、组织名。
•
本地绝对路径中的隐私信息。
•
token、API key、session、cookie。
•
内网域名、仓库私有地址。
•
客户数据、订单号、日志中的用户标识。
Cloud 与团队管理
Cloud / Web 场景下,安全重点从“本机命令”扩展到“仓库权限和环境配置”:
•
Codex 连接了哪些 GitHub 仓库。
•
能否创建分支、提交 commit、打开 PR。
•
运行环境是否包含 secret。
•
是否允许访问互联网。
•
任务日志中是否出现敏感输出。
•
谁能查看任务和结果。
团队接入建议:
先用示例仓库跑通流程。
为真实仓库准备最小权限环境。
把测试命令写进 AGENTS.md。
对高风险目录写清楚禁改或需审批规则。
定期 review automation、MCP、Skills 和组织策略。
发布前安全检查模板
代码块
YAML
请对当前 diff 做发布前安全检查,不要修改文件。
重点检查:
1. 是否新增或暴露凭据、token、cookie、内部域名。
2. 是否放宽权限、CORS、认证或网络访问。
3. 是否修改数据库迁移、账单、权限、删除逻辑。
4. 是否缺少测试、回滚说明或人工确认步骤。
5. 是否有需要在 PR 描述中明确标注的风险。
审计记录怎么留
每次高风险任务建议记录:
•
任务目标。
•
Codex 执行的命令。
•
人工批准的命令。
•
修改文件列表。
•
验证命令和结果。
•
未验证的风险。
•
回滚方式。
这些信息可以放到 PR 描述、release notes 或团队复盘文档中。