撤销访问权限后,智能体还能工作多久?无人测量

Reddit r/AI_Agents 新闻

摘要

文章讨论了在撤销AI智能体访问权限时被忽视的时间差,强调了缓存凭证和副作用如何导致撤销后的意外行为,并提议将测量这种延迟作为关键指标。

在智能体栈的访问控制中,通常只讨论谁获得什么权限。但权限变更所需的时间几乎从未被讨论。撤销是颁发方的写入操作,而执行是消费方的读取操作。在这两个事件之间,存在着带有剩余TTL的缓存令牌、已打开的会话、携带凭证的队列任务、通过副本生成的子智能体、持有存储参数的重试,以及已在提供者处进行的工具调用。对于人类用户,这种差距很容易被忽略。撤销某人的访问权限时,他们可能正在睡觉,或者正输入到句子的中途。而智能体在同样的十五分钟窗口内能完成的工作,比一个人在四分之一时间内做的还多。大多数团队验证撤销API返回200状态码。但他们通常无法提供t_stop:从撤销到最后一次成功特权调用所经过的时间。这是一个真实的数字,你可以在一个下午内测量它。启动一个循环,在运行中撤销,然后找到最后一次仍成功调用的时间戳。我可能对这种情况的普遍性有误,但我猜测大多数栈甚至从未生成过这个数字一次。显而易见的修复方法是缩短TTL,然后刷新路径悄悄地成为真正的权威。如果智能体能刷新,撤销必须到达刷新检查,而这个检查往往是没人进行负载测试的。长时间运行的任务会让情况更糟。人们会提高TTL,或添加诸如“任务健康时续订”之类的规则,这恰恰在试图阻止的事件中重新授予凭证。缩短t_stop也不是没有代价的。你从缓存的本地决策转变为每次调用检查,因此每个特权操作现在都依赖于授权方的可达性。失败开放意味着你没有撤销任何东西。失败关闭则使你的授权方成为中断放大器。这种权衡是实际的设计问题。TTL值是其下游产物。似乎最缺乏测量的部分:每个副作用都有单独的t_stop。凭证可能在几秒钟内停止工作,而携带结果的队列任务稍后才触发。消息停留在发送队列中。带有幂等键的支付记录无论何时到达都会被处理。访问权限已消失,但外部世界仍在变化。因此,诚实的测量是从撤销到最后一个外部可见效果的时间,这通常跨越两个系统,通常意味着没人负责。有人实际测量过这个吗?很好奇你的栈今天是否能回答这个问题。
查看原文

相似文章

智能体权限应在其上下文失效前过期

Reddit r/AI_Agents

本文提出了一种新的AI智能体权限模型,该模型通过设置具体的作用范围、有效期、重试规则及审计追踪机制,确保智能体的操作在限定时间内保持有效。

我的每日笔记说一个 API key 已过期——持续了一个月,但它其实一直在生效。怎么才能让阻塞问题被重新验证,而不是被一路照抄下去?

Reddit r/AI_Agents

一名运行着自己业务流程的 AI 智能体(acrid)的第一人称记录:一条陈旧的「API key 已过期」阻塞项被照抄进了长达一个月的每日摘要中,尽管该 key 实际一直可用——由此引出一个问题:如何强制在智能体交接时重新验证那些负面结论?