教程

Claude Code 配置完全指南:settings.json 四级作用域与权限管理

Claude Code settings.json 四级作用域完整指南:Managed/User/Project/Local 配置范围与优先级规则、权限配置语法(allow/deny/Bash/Read/Write)、三大实际场景配置(个人开发/团队项目/企业安全)、敏感文件保护、环境变量注入与子代理参数配置。

2026/3/144分钟 阅读ClaudeEagle

Claude Code 的配置系统支持四级作用域——个人、项目、本地、企业管理。理解这个系统,才能在团队环境里优雅地管理权限,让每个人的配置既个性化又安全。

四级配置作用域

作用域配置文件位置影响范围提交 Git?
Managed(企业管理)macOS: /Library/Application Support/ClaudeCode/managed-settings.json机器上所有用户否(IT 部署)
User(个人)~/.claude/settings.json你的所有项目
Project(项目).claude/settings.json所有协作者
Local(本地).claude/settings.local.json只有你,只在此项目否(自动 gitignore)

优先级规则

高优先级覆盖低优先级:

Managed(最高,不可覆盖) ↓ 命令行参数(临时) ↓ Local(覆盖项目和个人) ↓ Project(覆盖个人) ↓ User(最低默认值)

快速打开配置

bash
claude
/config    # 打开配置界面(推荐)

或直接编辑文件:

bash
# 个人全局配置
code ~/.claude/settings.json

# 项目配置
code .claude/settings.json

常用配置项速查

完整配置示例

json
{
  "model": "claude-sonnet-4-5",
  "autoMemory": true,
  "theme": "dark",
  "permissions": {
    "allow": [
      "Bash(npm:npx:yarn:pnpm)",
      "Bash(git:gh)",
      "Read(**)",
      "Write(src/**)",
      "Edit(src/**)"
    ],
    "deny": [
      "Bash(rm -rf*)",
      "Bash(curl:wget)",
      "Write(.env*)"
    ]
  },
  "hooks": {
    "PostToolUse": [
      {
        "matcher": "Write|Edit",
        "hooks": [{ "type": "command", "command": "bash ~/.claude/hooks/format.sh" }]
      }
    ]
  },
  "env": {
    "NODE_ENV": "development"
  }
}

权限配置详解

权限控制 Claude 能执行哪些操作:

json
{
  "permissions": {
    "allow": [
      "Bash(git *)",          // 允许所有 git 命令
      "Bash(npm test)",       // 只允许 npm test
      "Read(**)",             // 允许读取所有文件
      "Write(src/**)",        // 只允许写 src/ 下的文件
      "Write(*.md)"           // 只允许写 Markdown 文件
    ],
    "deny": [
      "Bash(rm*)",            // 禁止所有 rm 命令
      "Write(.env*)",         // 禁止修改环境变量文件
      "Write(package.json)",  // 禁止修改 package.json
      "Bash(curl *)",         // 禁止网络请求
      "Bash(* --force)"       // 禁止所有 --force 参数
    ]
  }
}

规则语法

  • *:匹配任意字符(不含路径分隔符)
  • **:匹配任意路径
  • Bash(pattern):Shell 命令匹配
  • Read(pattern) / Write(pattern) / Edit(pattern):文件操作

模型配置

json
{
  "model": "claude-sonnet-4-5",   // 默认模型
  "fallbackModel": "claude-haiku-3-5"  // 限速时降级模型
}

会话中切换模型:/model claude-opus-4-5

沙箱配置

json
{
  "sandbox": {
    "enabled": true,
    "pathPrefixes": ["/tmp", "./workspace"]  // 沙箱内可访问的路径
  }
}

实际配置场景

场景 1:个人开发者配置(宽松)

~/.claude/settings.json

json
{
  "model": "claude-sonnet-4-5",
  "autoMemory": true,
  "permissions": {
    "allow": [
      "Bash(*)",
      "Read(**)",
      "Write(**)",
      "Edit(**)"
    ],
    "deny": [
      "Bash(rm -rf /)",
      "Bash(sudo rm*)"
    ]
  }
}

场景 2:团队项目配置(平衡)

.claude/settings.json(提交到 Git):

json
{
  "model": "claude-sonnet-4-5",
  "permissions": {
    "allow": [
      "Bash(git *)",
      "Bash(npm *)",
      "Bash(npx *)",
      "Read(**)",
      "Write(src/**)",
      "Write(tests/**)",
      "Write(docs/**)",
      "Edit(src/**)",
      "Edit(tests/**)"
    ],
    "deny": [
      "Write(.env*)",
      "Write(package-lock.json)",
      "Bash(rm *)",
      "Bash(curl *)",
      "Bash(wget *)"
    ]
  },
  "hooks": {
    "PostToolUse": [
      {
        "matcher": "Write|Edit",
        "hooks": [{ "type": "command", "command": "npx lint-staged 2>/dev/null || true" }]
      }
    ]
  }
}

个人本地覆盖 .claude/settings.local.json(不提交):

json
{
  "permissions": {
    "allow": [
      "Bash(docker *)"   // 个人开发环境需要 Docker
    ]
  }
}

场景 3:企业安全配置(严格)

/Library/Application Support/ClaudeCode/managed-settings.json(IT 部署,不可覆盖):

json
{
  "permissions": {
    "deny": [
      "Bash(curl *)",
      "Bash(wget *)",
      "Bash(ssh *)",
      "Write(/etc/*)",
      "Write(/usr/*)"
    ]
  },
  "env": {
    "ANTHROPIC_API_URL": "https://internal-proxy.company.com"
  }
}

敏感文件保护

告诉 Claude 永远不要读取哪些文件:

json
{
  "ignorePatterns": [
    ".env",
    ".env.*",
    "*.pem",
    "*.key",
    "secrets/**",
    "credentials/**"
  ]
}

环境变量注入

给 Claude Code 进程注入环境变量:

json
{
  "env": {
    "NODE_ENV": "development",
    "DATABASE_URL": "postgresql://localhost:5432/dev",
    "LOG_LEVEL": "debug"
  }
}

注意:敏感的 API Key 用系统环境变量,不要写进 settings.json(会提交到 Git)。

子代理配置

控制子代理的默认行为:

json
{
  "agents": {
    "defaultModel": "claude-haiku-3-5",   // 子代理默认用更便宜的模型
    "autoMemory": true,                    // 子代理开启记忆
    "maxConcurrent": 5                     // 最多同时跑 5 个子代理
  }
}

验证当前生效配置

bash
claude
/config    # 查看当前所有配置
/status    # 查看会话状态包括权限

命令行临时覆盖(只影响这次会话):

bash
claude --model claude-opus-4-5 --permission-mode plan

来源:Claude Code Settings | Anthropic 官方文档

相关文章推荐

教程Claude Code settings.json 完整配置参考:40+ 配置项、作用域继承与插件管理Claude Code settings.json 完整配置参考:四级作用域(Managed 最高不可覆盖/User/Project/Local)及其优先级继承规则、不同功能的配置文件位置(Settings/Subagents/MCP/Plugins/CLAUDE.md)、40+ 配置项速查(基础/认证/界面/工作流/权限/安全企业/MCP/插件),包括 companyAnnouncements 公告、apiKeyHelper 动态 Key、fastModePerSessionOptIn 会话级快速模式、strictKnownMarketplaces 市场限制,以及 /config 命令和验证方法。2026/3/7教程Claude Code 权限管理完全指南:精确控制 AI 能执行哪些操作Claude Code 权限系统完整解析:四种权限模式(default/acceptEdits/bypassPermissions/plan)、--allowedTools 和 --disallowedTools 精确工具控制、Bash 命令白名单语法(通配符匹配)、settings.json 持久化权限配置、CLAUDE.md 中的权限规则声明、CI/CD 自动化场景的权限配置、以及如何在效率和安全之间找到平衡点。2026/3/18教程Claude Code .claudeignore 完全指南:精准控制 AI 读取文件的范围Claude Code .claudeignore 文件完整使用指南:语法规则(与 .gitignore 完全一致)、为什么需要排除文件(隐私/性能/干扰)、推荐排除的文件类型(node_modules/secrets/.env/构建产物)、按项目类型的最佳实践配置(Node.js/Python/Go/单体仓库)、.claudeignore 与 .gitignore 的区别,以及如何验证排除规则是否生效。2026/3/18教程Claude Code LLM Gateway 配置指南:LiteLLM 统一端点、动态 API Key 与三大提供商直通Claude Code LLM Gateway 配置完整指南:Gateway 五大价值(集中认证/用量追踪/费用控制/审计日志/模型路由)、三种 API 格式兼容要求(Anthropic Messages/Bedrock/Vertex 的 Headers 透传规则)、LiteLLM 静态 API Key 和动态 Key(三步配置:脚本+apiKeyHelper+TTL)、四种端点配置(统一端点推荐/Claude 直通/Bedrock 直通/Vertex 直通)、自定义模型名称设置,以及企业完整配置示例。2026/3/6教程Claude Code 企业网络配置:代理服务器、自定义 CA 证书与 mTLS 双向认证完整指南Claude Code 企业网络配置完整指南:代理服务器配置(环境变量 HTTPS_PROXY/NO_PROXY + settings.json env 方式)、Basic 认证和 NTLM/Kerberos 替代方案、自定义 CA 证书(NODE_EXTRA_CA_CERTS,PEM 格式要求)、mTLS 双向认证三个环境变量(CLIENT_CERT/CLIENT_KEY/PASSPHRASE)、必须放通的三个域名(api.anthropic.com/claude.ai/platform.claude.com)、完整企业配置 JSON 示例,以及五大故障排查。2026/3/6教程OpenClaw 接入 IRC:让 AI 助手进驻经典 IRC 聊天室完全指南OpenClaw 接入 IRC(Internet Relay Chat)的完整配置教程:IRC 渠道的内置支持(无需插件)、服务器连接配置(host/port/nickname/channels)、TLS 加密连接、NickServ 认证(密码/SASL)、频道加入与白名单控制、私信配对(DM pairing)、群组消息与 @ 提及配置、IRC 与现代聊天工具的融合使用场景,以及常见 IRC 服务器(Libera.Chat/OFTC/Freenode替代)的连接示例。2026/3/22