Skip to content

目标:把“能做什么”和“不能做什么”写成规则,并让系统强制执行。

🎯 文章目标

  • 明确能力边界:按站点/用户/组织/任务类型定义
  • 设计权限模型与策略执行点
  • 给出越权检测与红队演练方法

📚 背景/前置

  • LLM + 工具难点:模型可能“请求不该有的工具/数据”;需系统兜底
  • 安全从设计开始:白名单/黑名单、参数校验、输出审计

🔧 核心内容

1) 权限模型与策略

  • 对象:工具、数据域、动作(读/写/删除)
  • 主体:用户/角色/组织/站点类型
  • 关系:RBAC/ABAC;策略示例:某站点仅可读“公共知识库”

2) 执行点

  • 入口:LLM 工具调用前,校验 toolName 与参数
  • 出口:响应脱敏;禁止泄露凭证/内部错误堆栈
  • 审计:请求/响应/错误记录;越权尝试报警

3) 红队与越狱防护

  • 构造攻击样本:提示注入/越权请求/敏感信息套取
  • 规则库:拒答模板、替换模板、审计标记
  • 人工复核:高风险操作引入人工二次确认

💡 实战示例:Node.js 中间件

javascript
function guard(req, res, next){
  const { user, tool } = req
  if (!isAllowed(user, tool)) return res.status(403).json({ code:'FORBIDDEN' })
  next()
}

📊 对比/取舍(速查)

  • 严格限制 vs 灵活能力:安全优先时,明确边界并提供灰度开关
  • 线上红队 vs 线下红队:线下批量更安全,线上小流量/可回滚

🧪 踩坑与经验

  • 忽略出口审计:响应可能泄露敏感信息
  • 规则“写了不执行”:必须在关键路径接入,持续验证

📎 参考与延伸

  • 提示注入/越狱样本库与检测工具
  • 审计与合规(按公司规范)

💭 总结

  • 以“模型能力边界 + 权限模型 + 执行点 + 红队”构建可防御的系统