郭震 AI公众号:郭震AI

6 权限、设置与安全边界:哪些命令可以放行,哪些必须卡住

发布日期: 2026-06-03

分类: Claude Code

预计阅读: 3 分钟

阅读次数: 0

Claude Code 权限与安全边界手绘图

Claude Code 和普通聊天工具最大的区别,是它可以真的动你的项目:读文件、改文件、运行命令、连接工具。能力强了以后,安全边界就必须提前设好。

我的原则很简单:读代码可以宽一点,改代码要看范围,删除、上传、部署、改数据库必须谨慎。

先理解权限为什么重要

你让 Claude Code 跑 npm run build,通常没问题。你让它跑 rm -rfgit reset --hardscpsystemctl restart、数据库迁移,就要非常小心。

这些命令不是不能用,而是必须知道它会影响什么。尤其是生产服务器、用户数据、支付、密钥、证书,不能因为“AI 说需要”就直接放行。

用 /permissions 管理规则

官方命令参考里有 /permissions,用于管理 allow、ask、deny 规则。你可以把常见低风险命令放进允许列表,把高风险命令保留为询问或拒绝。

我常见的分层是:

  • 允许:git statusgit diffrgls、读取文件、运行项目已有测试。
  • 询问:安装依赖、修改配置、运行部署脚本、远程连接。
  • 拒绝:读取私钥、打印 .env、删除大目录、重置 Git 历史、直接操作生产数据库。

这不是固定模板,你要按自己的项目调整。

settings.json 不要乱抄

Claude Code 的设置可以放在 .claude/settings.json 等位置。官方设置文档里有很多选项,比如 MCP server allowlist、hooks URL allowlist、权限规则、自动记忆开关等。

新手不要一上来就复制一大份别人家的设置。你应该先只写最少几条:

{
  "permissions": {
    "deny": [
      "Bash(rm -rf *)",
      "Read(.env)",
      "Read(**/*.pem)"
    ]
  }
}

具体语法要以官方文档和你当前版本为准。这里想表达的是思路:先把明显危险的东西挡住,再逐步增加便利规则。

敏感文件的处理

项目里常见的敏感内容包括:

  • .env
  • .pem.key
  • 证书目录
  • 数据库 dump
  • 服务器密码
  • OAuth token
  • 支付回调密钥

这些文件不应该进入教程、日志、提交记录,也不应该让 Claude Code 为了“排查问题”直接打印出来。你可以让它读取变量名、配置示例、.env.example,但不要让它读取真实值。

部署命令要分级

本地构建失败,损失很小。生产部署失败,影响真实用户。所以我建议把部署分成三步:

  1. 让 Claude Code 先说明要执行的部署命令。
  2. 让它在本地构建或测试。
  3. 再决定是否远程部署。

如果是团队项目,还应该把部署脚本写进文档和 CI,不要让每个人靠口头记忆。

Claude Code 用得越熟,越应该把安全规则写得越清楚。让它省时间,不是让它越权。

下一篇讲 Skills 和命令。重复工作不要每次都重新写 prompt,可以沉淀成自己的工具。

参考资料:

Continue

读完这篇,下一步看什么

返回栏目

Reader Messages

读者留言

有问题、补充资料或实测结果,可以直接留下。这里不需要登录。

最多 800 字

为了防刷,每条留言会做长度、链接数量和提交频率限制。

0/800

留言列表

0
正在加载留言...
本页阅读:统计中