第二十四课:审批机制与 ExecPolicy
1.1K字·3分钟·
untrusted/on-request/never.rules文件自定义策略
学习目标
- 理解三级审批策略
- 掌握 ExecPolicy 规则文件
- 了解自定义策略配置
一、审批策略
审批策略决定了代理执行命令时是否需要用户确认。
1.1 untrusted(不信任)
所有命令都需要用户确认。这是最安全的策略,适合:
- 安全审查
- 敏感操作
- 初次使用
1.2 on-request(按请求)
只有代理请求时才需要确认。这是推荐的日常策略:
- 代理会自动判断是否需要确认
- 危险操作会请求确认
- 常规操作自动执行
1.3 never(从不)
自动批准所有命令。仅用于:
- CI/CD 环境
- 自动化脚本
- 隔离环境
二、配置方法
2.1 命令行
codex --ask-for-approval untrusted "审查代码"
codex --ask-for-approval on-request "开发功能"
codex --ask-for-approval never "运行测试"
2.2 配置文件
# ~/.codex/config.toml
approval_policy = "on-request"
三、ExecPolicy 规则
ExecPolicy 允许你定义自定义的命令执行规则。
3.1 规则文件格式
# ~/.codex/rules
# 允许 git 命令
git * : allow
# 禁止删除
rm -rf * : deny
# 需要确认
npm install * : ask
3.2 规则优先级
规则从上到下匹配,第一个匹配的规则生效。
3.3 规则类型
- allow:自动允许
- deny:自动拒绝
- ask:需要用户确认
四、最佳实践
- 使用 on-request 作为默认策略
- 为常见命令创建 allow 规则
- 为危险命令创建 deny 规则
- 定期审查和更新规则
五、本课小结
| 要点 | 说明 |
|---|---|
| untrusted | 所有命令需确认 |
| on-request | 按请求确认(推荐) |
| never | 自动批准(CI用) |
| ExecPolicy | 自定义命令规则 |
下一步
下一课我们将了解安全最佳实践。