当 Claude Code 从个人工具进入团队或企业环境时,最大变化不是安装方式,而是治理方式。个人可以灵活调整权限、插件和工具使用策略;组织则需要统一边界,避免不同开发者的本地设置绕过安全要求。

本项目的 examples/settingsexamples/mdm 给出了两层样例:前者展示托管设置应该如何写,后者展示这些设置如何通过设备管理系统分发。

settings 示例的三种取向

examples/settings/settings-lax.json 是宽松配置。它禁用 --dangerously-skip-permissions,并设置 strictKnownMarketplaces。这种配置适合刚开始试点 Claude Code 的团队,重点是先关掉明显危险的权限绕过能力。

examples/settings/settings-strict.json 是严格配置。它包含更多治理项,例如:

  • permissions.disableBypassPermissionsMode 禁用权限绕过模式。
  • permissions.ask 要求 Bash 工具走审批。
  • permissions.deny 禁用 WebSearch 和 WebFetch。
  • allowManagedPermissionRulesOnly 限制只能使用托管权限规则。
  • allowManagedHooksOnly 限制只能使用托管 Hook。
  • strictKnownMarketplaces 控制插件市场来源。
  • sandbox 约束 Bash 沙箱网络、Unix socket、本地监听等能力。

examples/settings/settings-bash-sandbox.json 则专注于 Bash 沙箱。它开启 sandbox.enabled,禁止非沙箱命令,并关闭沙箱后自动放行 Bash 的能力。这种配置适合团队希望保留命令执行能力,但要求命令运行在更受控的环境中。

托管设置的核心思路

企业管控的关键是让重要策略从“用户可改”变成“组织托管”。例如,如果用户可以在项目内随意新增 allow 规则,那么权限控制会变成形式;如果用户可以随意添加本地 Hook,也可能绕过组织想要统一执行的安全策略。

因此,严格配置中的 allowManagedPermissionRulesOnlyallowManagedHooksOnly 很关键。它们把权限规则和 Hook 的控制权上收到托管配置,让团队可以统一审查和分发策略。

strictKnownMarketplaces 也同样重要。插件可以带来强大的工作流能力,但未治理的插件来源会引入供应链风险。组织应该明确允许哪些插件市场,或者在高安全场景中只允许内部审核过的插件。

MDM:把配置分发到设备

examples/mdm 展示了多平台分发方式:

  • managed-settings.json 可以部署到系统配置目录,适合通用场景。
  • macos/com.anthropic.claudecode.plist 可用于 Jamf 或 Kandji 的 Custom Settings。
  • macos/com.anthropic.claudecode.mobileconfig 可用于完整配置描述文件。
  • windows/Set-ClaudeCodePolicy.ps1 可通过 Intune 平台脚本写入托管设置。
  • windows/ClaudeCode.admxen-US/ClaudeCode.adml 可用于组策略或 Intune 导入 ADMX。

这些模板默认演示的是最小策略,例如禁用绕过权限模式。真实落地时,团队应把 examples/settings 中更完整的策略合并进去,再通过 MDM 分发。

灰度发布建议

不要一开始就把最严格配置推到全员。更稳妥的路径是:

  1. 先在平台工程或安全团队内部试点 settings-lax.json
  2. 在一个小项目中引入 settings-bash-sandbox.json,观察 Bash 审批和沙箱对效率的影响。
  3. 对涉及敏感代码、生产凭证或合规要求的团队启用 settings-strict.json
  4. 通过 MDM 分批推送,并要求用户在 Claude Code 的 /status 中确认设置来源。
  5. 根据误拦截和缺失拦截情况调整托管规则。

容易忽略的边界

沙箱配置主要约束 Bash 工具,不代表所有工具都自动进入相同隔离范围。示例 README 中也明确提示,sandbox 属性不适用于 Read、Write、WebSearch、WebFetch、MCP、Hook 或内部命令。

这意味着企业配置不能只依赖沙箱。对于 Web 工具,需要通过 permissions.deny 或其他权限规则控制;对于插件和 Hook,需要通过托管配置限制来源;对于模型访问和遥测,则可能需要 Gateway 统一入口。

从个人效率到组织治理

Claude Code 的个人体验强调效率,企业落地则必须增加边界。examples/settingsexamples/mdm 的价值就在于把这些边界变成可审查、可分发、可验证的配置。

团队可以先从最小策略开始:禁用危险权限绕过模式、限制插件来源、要求敏感命令审批。等使用规模扩大后,再逐步加入 Hook 管控、Bash 沙箱、Web 工具限制和更细粒度的权限规则。这样既不会一开始就牺牲开发体验,也能逐步建立可治理的 AI 编码环境。

更多推荐