五厂面经真题集华为面经高频网易面经高频工具安全权限控制Agent开发速答 · 约 5 分钟更新 2026-09-29

Agent 调用外部工具的安全边界怎么划?

一句话结论

先按工具风险分级,再把权限和确认机制下沉到工具层:查询限频,可逆写自动执行并审计,不可逆操作必须人工确认,同时做白名单、参数校验、沙箱隔离和审计留痕。

先这样答

Agent 调用外部工具的安全边界,要按操作风险分级,并在工具层强制执行,不能依赖模型自觉。先把工具分成三类。只读工具属于查询类操作,可以自动放行,但需要限制调用频率。可逆写操作包括创建草稿、加标签,可以自动执行,但必须保留事后审计记录。不可逆操作包括删除、对外发送、资金操作,必须在执行前要求人工确认。

工程上,我会先建立工具白名单注册制。只有注册过的工具才能被 Agent 调用。每个工具都要定义参数 schema,并在调用前校验参数类型、范围和必填项。这样可以限制模型传入不符合预期的参数。工具执行还要放在隔离的沙箱环境中,避免工具权限直接扩散到其他资源。

最后,需要记录完整的审计日志。日志要能还原调用了哪个工具、传入了什么参数、执行结果是什么,以及是否经过人工确认。分级规则、白名单、参数校验、沙箱和审计要一起落地。核心原则是把安全边界放在工具层,而不是让模型自己判断哪些操作可以执行。

面试官会怎么追问

  • 「为什么不能只靠提示词约束 Agent?」 提示词只能影响模型输出,不能替代工具侧的权限控制。模型可能产生错误判断,也可能生成不符合预期的参数。真正的边界必须由白名单、参数校验和人工确认机制强制执行。

  • 「可逆写操作为什么可以自动执行?」 这类操作可以改变数据,但通常具备回退空间,所以风险低于删除、发送和资金操作。自动执行可以保留效率,同时通过事后审计记录调用过程。具体工具仍然要先完成注册和参数校验。

  • 「人工确认应该放在哪个环节?」 人工确认应放在不可逆操作真正执行之前。系统需要先展示待执行的工具和参数,再等待确认结果。没有确认时,工具层不能继续执行。

回答的坑

  • 把所有工具都设置成自动执行,忽略删除、对外发送和资金操作的不可逆风险。

  • 只说提示词和模型自觉,不说明白名单、参数校验、沙箱隔离和审计如何在工具层落地。

—— 本题完 ——