Agent安全架构设计:将模型视为不可信执行体的工程实践
📌 Agent安全架构设计:将模型视为不可信执行体的工程实践
1️⃣ 工具白名单:收敛能力边界
Agent系统的第一道防线不是“限制模型思考”,而是限制其可操作空间。必须通过工具白名单机制,将能力显式收敛。
✔ query_database(sql_select)
✔ read_file_safe(path)
✔ call_internal_api(endpoint)
✔ search_document(index, query)
核心原则是:不提供 shell,不提供原生命令执行能力,彻底切断模型与系统命令层的直接关系。
2️⃣ 参数级安全校验:阻断危险输入
即使工具是安全的,也必须对参数进行结构化安全过滤,避免模型通过参数“绕过逻辑约束”。
🎯 高危规则拦截
- 禁止 SQL:DROP / DELETE / UPDATE without condition
- 禁止系统路径:/etc /root /var/log
- 禁止密钥文件:*.pem / id_rsa / secrets
- 禁止内网访问:192.168.x.x / 10.x.x.x
🎯 过滤策略
关键点:不是关键词过滤,而是结构解析 + 语义判断。
3️⃣ 沙箱执行环境:隔离宿主机风险
所有工具执行必须进入受限运行环境,避免直接污染宿主机。
🚀 沙箱核心能力
- 容器化隔离(Docker / gVisor / Firecracker)
- 只读文件系统挂载
- 限制 CPU / 内存 / IO
- 禁止宿主网络访问或仅允许白名单域名
- 执行超时强制终止
4️⃣ HITL人工审批机制:控制高危操作
对于高风险行为,必须引入Human-in-the-Loop(HITL)机制。
🎯 触发条件
- 数据库写操作(INSERT/UPDATE/DELETE)
- 文件删除或修改关键路径
- 系统配置变更
- 跨服务调用(高权限API)
🎯 审批流程
↓
策略引擎评估风险
↓
触发人工审批
↓
管理员确认/拒绝
↓
执行或终止
该机制的核心价值是:将不可逆操作从自动系统中剥离。
5️⃣ 权限网关 + 策略引擎:统一决策中心
所有Agent工具调用必须经过统一的权限网关(Policy Gateway)。
📌 决策链路
- 身份认证(Who)
- 权限判断(Can do what)
- 上下文判断(Under what condition)
- 风险评估(How dangerous)
核心原则:执行权限永远不在模型侧,而在系统侧。
6️⃣ 审计日志:构建不可抵赖链路
安全体系的最后一环是完整审计能力,用于追溯所有Agent行为。
🎯 必须记录内容
- traceId / requestId
- 工具调用内容
- 输入参数与输出结果
- 权限判断结果
- 执行时间与耗时
7️⃣ 总体安全架构总结
1️⃣ LLM层:仅负责生成“意图 + tool call”
2️⃣ Policy层:权限与规则校验
3️⃣ Risk层:风险评分与分级
4️⃣ Sandbox层:隔离执行环境
5️⃣ Audit层:全链路日志记录
这种分层的核心思想是:任何一层都不能单独决定系统安全性,必须形成“多重防线叠加”。
📌 总结
Agent系统一旦具备执行能力,就必须彻底改变设计假设:模型不可信,执行必须受控。
✅ 正确架构:通过系统级权限控制约束模型行为
最终目标不是“让模型更聪明”,而是让系统即使面对错误或恶意输出,也不会产生不可控后果。
相关文章
-
你是怎么判断问题主要来自模型幻觉,还是 RAG、Prompt、工具链路本身?
你是怎么判断问题主要来自模型幻觉,还是 RAG、Prompt、工具链路本身?
NEW个对象 2026-06-20
-
你会怎么判断问题来自模型幻觉,还是RAG、Prompt、工具链路本身?
你会怎么判断问题来自模型幻觉,还是RAG、Prompt、工具链路本身?
NEW个对象 2026-06-19
-
Agent 中 Planner 是什么?——基于 Spring AI Alibaba 的工程化解析
Agent 中 Planner 是什么?——基于 Spring AI Alibaba 的工程化解析
NEW个对象 2026-06-20