智能体能够调用工具后,企业需要明确哪些动作可以执行、由谁授权,以及执行证据保存在哪里。OWASP 在过度代理风险说明中强调,过多功能、过大权限和过高自主程度会扩大错误操作的影响。下面把这一原则转成项目设计中的动作清单。
给每一个业务动作分配边界
以销售助手为例,“查找产品手册”“生成报价草稿”“修改 CRM 商机”和“发送客户邮件”应是不同能力。相同的聊天入口不意味着这些能力可以共用一个全能账号。
| 动作 | 建议的控制方式 | 需要保留的结果 |
|---|---|---|
| 查找资料 | 根据当前用户筛选可见资料 | 查询来源与访问结果 |
| 生成草稿 | 在指定范围内保存,不直接对外发送 | 草稿版本及待确认项 |
| 修改业务记录 | 服务端校验用户、对象及允许字段 | 修改前后值与任务编号 |
| 对外发送 | 按约定由有权限的人确认对象与内容 | 审批内容、执行结果及时间 |
表格是建议起点。具体动作是否需要逐次审批,应由企业根据授权范围和业务影响决定。
把规则放在执行链路上
提示词可用于说明任务,但权限检查应由应用和业务系统执行。工具服务需要验证当前身份、资源范围、参数和操作类型;即使模型提出不允许的请求,服务也应拒绝执行。凭据保存在受控服务中,不作为普通资料提供给模型阅读。
审批对象需要具体到本次操作内容。若批准的是某客户的一封邮件,随后更改收件人或正文,应重新按规则确认,不能沿用原审批无限执行其他任务。
知识与指令需要区分
上传文档、网页或客户邮件可能包含看似要求系统执行操作的文字。项目设计应把这些内容视为待处理资料,不能让其直接改变工具权限。对接收外部内容的任务,除了检查输出,还要检查实际调用了什么工具和访问了哪些资源。
这不是一次提示词调整就能完成的工作。权限控制、工具参数校验、用户确认和异常记录需要一起验证。
上线前尝试四类失败任务
- 用低权限用户查询另一部门资料,确认不返回受限内容。
- 请求修改禁止写入的字段,确认服务端拒绝且留有记录。
- 审批完成后改变操作内容,确认旧审批不能覆盖新操作。
- 取消正在等待的任务,确认不会在之后继续写入或发送。
失败任务与正常任务一起进入验收表,发现问题后由对应负责人关闭。继续阅读ERP 与 CRM 集成清单,可以把权限设计进一步落实到接口状态和错误处理。