范围问题:AI 智能体为何不能定义自身的授权边界
这种想法很诱人。当你部署一个 AI 智能体时,你希望它足够强大。它能调用的工具越多,能访问的系统越多,就越有用。至于它究竟被允许做什么,似乎可以在提示词里规定,或者交由智能体自行判断。毕竟,智能体知道自己需要什么,为何不让它自己决定?
这种推理正是范围问题的根源。一个参与定义自身授权的智能体,根本不值得被信任以任何授权。
在 AI 智能体的语境中,"范围"是指智能体被允许执行的动作集合:可调用哪些 API、可读写哪些数据存储、可操控哪些物理系统、可出示哪些凭证。在设计良好的部署中,范围在配置时固定,编码在智能体提交请求时出示的签名令牌中,由被调用系统验证——不依赖智能体的任何自我声明。智能体不决定自身范围,而是被告知范围,无法单方面扩张,边界由外部系统强制执行,而非依赖智能体的自我约束。
这个设计听起来不言而喻,但在实践中很少被完整实施。
最常见的失败模式是增量范围扩张。智能体以明确的能力集部署。随着时间推移,当它遇到初始范围内无法完成的任务时,运营者逐步扩大访问权限——每次一个权限,单独来看都合情合理。智能体的实际范围不断扩大。没有人审核整体授权的累积。智能体最终获得了对系统组合的访问权,而没有任何单个决策者明确授权过这种组合。出事时,授权链条溶解为一系列增量审批,每一步在当时看起来都没问题。
另一个相关失败是范围推断。某些架构允许智能体调用能力发现 API——询问"我能做什么?"——并据此行动。智能体没有固定的范围令牌,而是通过查询可用能力动态获取范围。在对抗性环境中,这意味着被攻破的上游上下文可以告诉智能体它拥有从未被授予的权限。智能体无法核实这一声明,因为它没有签名参考对比。智能体认为自己拥有的范围与实际被授权的范围悄然分离,智能体按更大的范围行动。
第三种失败最为隐蔽:通过工具组合进行范围漂洗。一个同时拥有读取文档权限和发送消息权限的智能体,可以将这两种能力组合起来,将文档内容泄露给外部方——而这一行动并未获得任何单个权限的授权。智能体没有声称拥有更广泛的范围,只是将已授权的原语组合成了未被授权的整体行动。没有任何单一权限被违反,但组合效果从未获得批准。
弥合这些缺口,需要将范围视为在部署时作出的、由外部强制执行的密码学承诺。每个范围维度——读写权限、可调用端点、可使用的凭证标识符——应编码在由配置权威机构签名的令牌中,且绑定智能体身份。当智能体向下游系统提交请求时,该系统验证令牌签名后方才执行。范围扩展需要新的配置事件、新的签名令牌,以及可追溯的人类决策。
这正是硬件交叉点变得关键的原因。仅存在于软件中的范围令牌,可被攻破运行时环境的特权攻击者修改。以硬件为根的范围强制执行——其中智能体授权能力的证明锚定于设备的安全飞地并可供远程系统验证——可抵御此类攻击。智能体的范围成为硬件上下文的事实,而非可被静默覆盖的软件声明。
量子安全交叉点同样重要,因为范围令牌是密码学对象。将智能体身份绑定到范围令牌的签名方案,必须在经典签名算法面临日益严峻威胁时保持安全。采用脆弱算法签名的范围令牌可被伪造,使攻击者能够向智能体颁发看起来合法的范围扩展。将范围令牌基础设施迁移至量子安全签名,不是假设性的未来考虑,而是任何预期跨十年生命周期运行的智能体系统的正确架构。
在现实照护环境中,范围问题的后果最为直接。一个范围涵盖用药计划、照护方案和与照护对象通信渠道的照护智能体,对脆弱生命具有深远影响。如果该范围从未被精确定义——如果它增量扩张,如果智能体可以动态发现能力,如果它可以将已允许的行动组合为未允许的结果——那么这种暴露不是配置错误,而是设计失误。它所带来的危害并非假设性的,而是直接源于让范围由智能体自行决定这一选择。
原则很简单。智能体绝不能是自身授权的仲裁者。范围是约束,不是偏好。它在智能体部署前设定,由可审计的权威机构签名,由智能体调用的系统执行,只能通过人类主导的明确配置事件来修改。其他一切都不是范围策略,而是一份邀请函。
AI 智能体的授权范围(scope)是其被允许执行的动作集合,应在部署时以签名令牌形式固定,由被调用系统外部强制执行,而非依赖智能体的自我约束。现实中存在三种常见失败模式:增量范围扩张(逐步授权导致无人明确批准的整体组合)、范围推断(动态查询可用能力,可被恶意上下文欺骗)、工具组合范围漂洗(将已授权的原语组合为未被授权的整体行动)。正确设计要求将范围视为密码学承诺:由配置权威机构签名,绑定智能体身份,下游系统验证后方可执行。硬件根信任防止运行时范围篡改;量子安全签名防止范围令牌伪造;在照护环境中,未经精确定义的范围是设计失误,危害真实而直接。