Skip to content

Harness 安全边界

Agent 能理解指令,不代表它值得拥有无限权限。安全设计应假设:用户输入、仓库文件、网页内容、MCP 返回值和 Skill 依赖都可能包含恶意指令。

威胁模型

最小权限

工具权限按动作拆分,不给“万能 Shell”:

  • 只读仓库;
  • 搜索符号;
  • 运行白名单测试;
  • 写入工作区;
  • 创建审查;
  • 发布生产。

默认从只读开始,写入和外部副作用必须有审批、路径边界和审计。

提示词注入

把仓库、网页和工具返回值当作不可信数据。模型可以阅读其中内容,但不应因为内容声称“忽略系统规则”就获得新权限。Harness 应在工具层重新校验身份、路径、命令和参数。

密钥与数据

  • Key 只从环境变量或密钥服务读取;
  • 日志脱敏 Authorization、Cookie、Token 和用户隐私;
  • 发送给模型前按字段和用途最小化;
  • 不把完整源码、生产数据和内部 URL 无条件加入上下文;
  • 保留删除和过期机制。

供应链

接入 Skill、MCP Server 或 Plugin 前检查来源、版本、权限、依赖、网络访问和更新策略。锁定版本并保留 SBOM 或依赖清单,升级后用任务集回归。

练习

  1. 为一个能写文件的 Tool 写出五条安全校验。
  2. 设计一条包含恶意仓库 README 的提示词注入测试。
  3. 列出必须人工批准的三类操作。

🚀 学习遇到瓶颈?想进大厂?

看完这篇技术文章,如果还是觉得不够系统,或者想在实战中快速提升?
王中阳的就业陪跑训练营,提供定制化学习路线 + 企业级实战项目 + 简历优化 + 模拟面试。