产品总览
Agent 权限与安全边界
了解 Agent 可以执行的操作、审批原则与安全责任。
Agent 权限与安全边界
Heicode Agent 可能读取代码、修改文件、运行命令、访问网络、调用 MCP 工具或连接外部服务。是否允许这些操作,应由工作区权限、执行环境和用户审批共同决定。
权限类型
| 权限 | 典型用途 | 主要风险 |
|---|---|---|
| 文件读取 | 理解仓库和配置 | 读取密钥、个人文件或项目外数据 |
| 文件写入 | 修改代码和测试 | 覆盖重要文件、扩大改动范围 |
| Shell 执行 | 构建、测试、安装依赖 | 删除文件、执行恶意脚本、修改系统状态 |
| 网络访问 | 下载依赖、调用 API | 代码或日志外传、访问不可信服务 |
| 环境变量 | 读取运行配置 | 暴露 Token、数据库密码和云凭证 |
| MCP / 外部工具 | GitHub、数据库、搜索等 | 第三方工具越权、返回不可信内容 |
| 云端 Sandbox | 远程执行长任务 | 数据同步、资源费用和隔离失败 |
最小权限原则
只给 Agent 当前任务真正需要的权限:
- 只读任务不应授予写权限;
- 本地代码任务不应默认允许访问项目外目录;
- 不需要联网的测试任务应关闭网络;
- 不需要生产数据的任务不应注入生产凭证;
- 不需要发布的任务不应拥有 Push、Merge 或部署权限。
命令审批
审批命令前,至少检查命令作用范围、目标路径、是否包含删除或覆盖操作、是否会安装未知软件、是否会访问外部网络,以及是否会读取或打印环境变量。
以下命令应提高警惕:
rm -rf
sudo
curl ... | sh
git reset --hard
git clean -fd
chmod -R
kubectl delete
terraform destroy这不代表这些命令永远不能使用,而是必须确认目标、影响范围和恢复方案。
跳过权限模式
跳过权限可以减少人工确认,但会显著扩大 Agent 的执行能力。仅应在以下条件同时满足时临时使用:
- 使用隔离工作区或一次性 Sandbox;
- 不包含生产凭证和敏感数据;
- Git 状态可恢复;
- 网络访问受控;
- 有资源和费用上限;
- 任务结束后立即关闭该模式。
不建议在个人主目录、生产服务器、共享开发机或含长期云凭证的环境中长期启用。
密钥与敏感数据
- 不要把 API Key、SSH 私钥、数据库密码直接写入任务描述;
- 使用环境变量或受控 Secret 注入机制;
- 日志和错误报告应默认脱敏;
- Agent 输出中出现凭证时,应立即撤销并轮换;
- 第三方模型和 MCP 可能有独立的数据处理政策,应分别评估。
MCP 信任边界
MCP Server 不是天然可信的。启用前应确认其来源、维护状态、权限范围、认证方式、网络目标和返回内容。一个具有文件、网络或凭证权限的 MCP,实际能力可能与本地插件相当。
多 Agent 场景
在 Agent Swarm 中,应明确以下边界:
- Agent 是否共享同一个工作区;
- 是否共享环境变量和 Secret;
- 一个 Agent 的修改何时对其他 Agent 可见;
- Team Lead 是否可以批准高风险操作;
- 冲突修改由谁合并;
- 单个 Agent 失败后是否保留其工作区和日志。
用户责任
Heicode 可以提供审批、隔离、日志和回滚能力,但不能替代用户对代码、命令、凭证和发布行为的最终判断。进入生产环境前,仍应执行独立代码审查、测试和发布审批。
最后更新于