Skip to content

权限安全系统

让 AI 操作你的文件系统,最大的顾虑是安全。Claude Code 的权限系统是我见过的 AI 工具里做得最细致的——7 种模式、23+ 种检查、4 级防护。

7 种权限模式

模式行为
default敏感操作需要用户确认
plan只读模式,禁止任何写入
acceptEdits自动接受文件编辑
bypassPermissions跳过所有检查(仅调试)
dontAsk非交互式,拒绝所有需确认的操作
autoAI 分类器自动判断风险
bubble权限向父级冒泡

大部分用户用 default 就够了。auto 模式比较有意思——用 AI 来判断操作是否安全。

权限检查流程

检查按优先级递进:

1. 否定规则(deny)    → 命中则直接拒绝
2. 允许规则(allow)    → 命中则直接放行
3. 询问规则(ask)      → 命中则弹确认框
4. 工具默认行为         → 工具自己定义的默认权限
5. 权限模式兜底         → 由当前模式决定

否定规则优先级最高——一旦被拒绝,后面的规则不再判断。这是安全系统的基本原则。

BashTool 的特殊防护

Bash 是最危险的工具——理论上可以执行任何命令。所以它有 23+ 种专属安全检查:

  • 命令注入检测
  • 危险变量检查(如 $HOME
  • 元字符混淆识别
  • 管道命令分析
  • 递归删除警告
  • 权限修改拦截

YOLO 分类器

auto 模式下的 AI 风险评估器:

用户操作 → YOLO 分类器 → 风险评估
                          ├── 低风险 → 自动批准
                          └── 高风险 → 回退到用户确认

名字叫 YOLO(You Only Live Once),但做的事情恰恰是谨慎的——宁可误报也不漏报。

规则配置语法

简洁的匹配语法:

Read(**)              # 允许读取所有文件
Bash(npm test)        # 允许运行测试
Bash(rm -rf *)        # 拒绝递归删除
Edit(src/**)          # 允许编辑 src 目录

企业策略

policyLimits 模块提供企业级管控:

  • 工具白名单
  • 使用配额限制
  • 安全策略覆盖