摘要

  • 9 月 29 日署期的个人 Internet-Draft 提议“交易访问令牌”:授权服务器对每次请求重新评估策略,发给单一资源服务器一个短期 OAuth 访问令牌,令牌内带交易标识。它仍是 I-D Exists 的工作草案,不是已采纳标准,也没有提供部署成效。
  • 若同一任务要访问两个资源服务器,两端收到的 txn 值应不同,授权服务器则保留内部对应关系。草案同时承认,通用的 client_id、其他声明和相近的发放时间,仍可能成为关联线索。编号隔离不等于交易匿名。

设想一个已获授权的代理要先读取一个服务,再调用另一个服务完成任务。常规访问令牌中的 scope 可以说明权限范围,却未必说明这一次调用属于哪项具体工作。draft-tulshi-oauth-transactional-access-tokens-00 试图把每笔交易的判断放回授权服务器,并将其认可的上下文交给目标资源服务器。草案以 AI 代理作为主要用例之一,但并不声称仅适用于 AI。Datatracker 将它列为个人提交、拟走 Standards Track 的草案;没有 RFC 编号或工作组采纳结论。

设计中最值得读的不是令牌缩写,而是“谁能合并记录”。授权服务器先生成不对外披露的内部交易标识,再给第一个资源服务器签发 typ=txnat+jwt、aud 只指向该服务器的令牌。客户端拿到不透明交易 handle 后,可以为同一任务向第二个服务器申请另一个令牌。第二个令牌的 txn 必须与第一个不同,而且除了授权服务器,其他一方不能仅凭这两个值判断它们属于同一交易。授权服务器却能在内部把它们连起来作审计。两端各看一段,中心掌握全程,这是可见范围的分配,而不只是密码学上的花样。

草案的隐私章节马上给出了限制:client_id 在不同资源服务器之间相同,因此相关活动并非天然不可关联。它建议按资源服务器使用成对的主体标识,并且仅放入接收方确实需要的上下文;同时指出发放时间靠得太近,合谋的服务器仍可能推断出关联。换言之,txn 字段少了一把公共连接键,其余字段和行为时间仍要单独检查。掌握内部连接键的授权服务器本身,也成了交易记录留存与查询权限的治理节点。

短有效期同样不能被夸大。草案建议 exp 与 iat 之差不超过 300 秒,但用于换取交易令牌的 refresh token 或客户端凭据可能更持久。只有授权服务器确实逐次评估、并能在底层凭据有效时拒绝某次交易,控制才从“长期授权”收缩到“本次任务”。草案承认 bearer 令牌在有效期内可被重放;它建议采用持有者约束,却没有规定所有资源服务器都必须实现单次使用。五分钟不是一次性的同义词。

此前的 OAuth Transaction Tokens 草案讨论的是信任域内部如何传递交易上下文,BTW 旧文追问其中签名声明的来源。这里的新闻事实是另一道边界:交易感知的访问令牌被送到信任域外的具体资源服务器,而跨服务器的交易拼接能力被保留在授权服务器。一个服务的本地 txn 日志有用,但它单独不足以还原整条跨服务任务链。

来源