Hi Bing

Thanks for your suggestions. We updated the abstract in the latest draft to
include more context on how chaining is achieved, including the protocol's
recursive nature.

Kind regards

Pieter

On Fri, May 29, 2026 at 11:30 AM Liubing (Leo) <[email protected]>
wrote:

> Hi Pieter,
>
>
>
> Thanks for your elaborating reply. It helped me better understand both the
> intended scope of the document and some common design philosophy in OAuth.
> And pls also pardon my delayed reply.
>
>
>
> Now I understand the draft is intentionally for “recursive single-hop”
> rather than “end-to-end multi-hop” model. So most of my concern is resolved
> according to the specific scope.
>
>
>
> However, I still think the term "chaining" might naturally suggest
> “end-to-end multi-hop” semantics in in many networking and security
> contexts (e.g., Service Function Chaining, Certificate Chain etc.). So I
> think now it is more as a terminology/clarification issue than a technical
> issue. Would you consider to add a little bit texts in the Abstract or
> Introduction clause to make the intended scope more explicit? E.g.,
> something like:
>
> - the specification defines only bilateral cross-domain exchange;
>
> - “chaining” is achieved through recursive repetition of the same
> mechanism;
>
> - end-to-end multi-hop semantics is out of scope.
>
>
>
> Thanks.
>
>
>
> B.R.
>
> Bing
>
>
>
> *From:* Pieter Kasselman <[email protected]>
> *Sent:* Saturday, May 23, 2026 3:23 AM
> *To:* Liubing (Leo) <[email protected]>
> *Cc:* [email protected]; [email protected];
> [email protected]; [email protected]
> *Subject:* Re: draft-ietf-oauth-identity-chaining-11 ietf last call
> Opsdir review
>
>
>
> Bing, on behalf of the authors, I want to thank you for your patience
> while we reviewed your feedback.
>
>
>
> We appreciate the time you took to review the draft and the questions you
> raised. Thank you.
>
>
>
> OAuth represents a rich and complex standards ecosystem that is widely
> deployed. This specification is an addition to that eco-system and must be
> read within that broader context (e.g. discovery, configuration, scale,
> deplyment policy, practical deployment experience etc).
>
>
>
> After considering the feedback the authors believe that the points raised
> do not surface new issues that should be addressed in this specification.
> Below is a summary of our response (we also left comments inline):
>
>    1. *"Chaining" is a single hop, repeated.* Multi-hop is achieved by
>    repeating the same single cross-domain exchange successively (A  -> B, then
>    B -> C, and so on). Each authorization server is only concerned with the
>    grant presented to it by the immediately preceding domain. A grant may
>    contain information about preceding hops, but that is an implementation or
>    policy choice, outside the scope of this specification. Neither the name of
>    the draft, nor the recursive nature of multi-hop support has been raised as
>    a concern during the specification's development over the last few years.
>    Implementation experience to date proves that this recursive model works in
>    practice.
>    2. *Frameworks vs Profiless.* This specification is intentionally a
>    framework. Specific claim semantics, trust relationships, and deployment
>    details are left to profiles optimised for specific use cases. The Identity
>    Assertion JWT Authorization Grant (https://datatracke
>    r.ietf.org/doc/draft-ietf-oauth-identity-assertion-authz-grant/) and
>    the Transaction Token Authorization Grant Profile for OAuth Identity and
>    Authorization Chaining (
>    
> https://datatracker.ietf.org/doc/draft-fletcher-transaction-token-chaining-profile/)
>    are examples of this. We believe more profiles will be developed. Embedding
>    those details in the base specification would over-constrain it.
>    3. *Cross-domain, not intra-domain.* The mechanism described in this
>    draft is intended for situations where identity and authorization context
>    must cross a trust domain boundary. It is explicitly not aimed at
>    workload-to-workload interactions inside a single trust domain, which
>    drafts like Transaction Tokens (
>    https://datatracker.ietf.org/doc/draft-ietf-oauth-transaction-tokens/08/)
>    address.
>    4. *Loop prevention is not an authorization-layer concern.* Applications
>    calling each other in loops is an application-design problem, not something
>    the authorization layer should arbitrate. The risks of looping is no
>    different in this specification than already exist in OAuth. No new
>    scalability constraints are introduced beyond those already present in
>    OAuth.
>    5. *Discovery, configuration, and future automation are deliberately
>    out of scope.* Consistent with other OAuth specifications,
>    deployment-specific configuration that does not affect interoperability is
>    left to implementers. Speculation about future automation mechanisms would
>    be inappropriate in a standards-track document.
>
> We believe the concerns raised are either already addressed by the
> existing design, appropriately deferred to profiles, or intentionally out
> of scope. We are grateful to you for the careful read, but do not believe
> the draft requires signifiant changes based on the feedback received.
>
> With gratitude
>
> Pieter Kasselman
>
>
>
> On Tue, May 12, 2026 at 7:33 PM Bing Liu via Datatracker <[email protected]>
> wrote:
>
> Document: draft-ietf-oauth-identity-chaining
> Title: OAuth Identity and Authorization Chaining Across Domains
> Reviewer: Bing Liu
> Review result: Not Ready
>
> Hi Dear authors, I'm assigned to review
> draft-ietf-oauth-identity-chaining-11
> by OPSDir.
>
> 1. General status: Not Ready
>
> I think the draft is addressing a real issue, esp. for currently hot
> discussed
> AI Agent interoperability stuff. The solution is simple yet effective. It
> integrates with existing RFCs and provides clear JSON structures to
> propagate
> and preserve the original user’s identity and authorization. And the
> security/privacy considerations are also well addressed.
>
> However, there is one major issue that made me mark it as “Not ready”:
> The solution name is “chaining”, which implies multi-hop processing. But
> the
> specification primarily describes bi-directional interactions between two
> domains.
>
>
>
> The protocol describes how identity and authorization context is
> transferred from one domain to another. The same protocol transfers
> context to a third, fourth or fifth trust domain. Whenever identity
> and authorization context is transferred, the same protocol is used,
> regardless of how many times it needs to be done.
>
>
>
> Although the JWT assertion naturally supporting multi-hops, it not
> necessarily supports a multi-hop authentication/authorization framework and
> solution automatically.
>
>
>
> Practical experience suggests otherwise.
>
>
>
> I’m not an expert in Oath, but my gut feeling is that
> multi-hop collaboration is a much more complex issue than bi-directional
> interaction.
>
>
>
> The "hop" is not bidirectional. It is from Domain A to Domain B. If a
> client in Domain B needs to access Domain C, it uses the exact same
> protocol (with the labels of Domain A changed to Domain B, and Domain
> B changed to Domain C). Multi-hop is just a single hop, done again,
> and repeated until no more hops are needed. The upper limit of the
> number of hops is subject to deployment choices and optimisation in
> implementation, which are out of scope for this draft.
>
>
>
> There might be essential gaps between the two, for example: i.
>  The “chaining” itself might need a model definition. E.g. there might be
> different roles in the chain, such as originator/intermediate
> relay/intermediate authorizer/destination etc.
>
>
>
> This draft provides a framework for chaining identity and
> authorization context between domains. The chaining is achieved by
> embedding the roles of participants, models, or any other context as
> claims (hence the
> explicit mention of claims transcription). The definition of those
> claims is out of scope for this specification and is left to profiles
> which may define specific claims for specific use cases. The Identity
> Assertion JWT Authorization
>
> Grant (https://datatracke
> r.ietf.org/doc/draft-ietf-oauth-identity-assertion-authz-grant/) and
>
> Transaction Token Authorization Grant Profile for OAuth Identity and
> Authorization Chaining
>
> (
> https://datatracker.ietf.org/doc/draft-fletcher-transaction-token-chaining-profile/)
> are examples of this.
>
> We expect more profiles to emerge based on specific deployment models and
> use cases.
>
>
>
> And other considerations like:
> is the sequence of the chain essential etc. ii.     Multi-hop trust model:
> for
> example, in the chain of A->B->C, does C only need to confirm assertion of
> A or
> B, or it needs to confirm A+B?
>
>
>
> The authorization server in Domain C is only concerned with the
> authorization grant issued by the authorization server in Domain B to
> the client in Domain B.
>
> The authorization grant issued by the authorization server in Domain B
> may contain claims that carry information about the request in Domain
> A. The authorization server in Domain C may choose to accept or reject
> the authorization grant, subject to its own policies which may be
> based on those claims, or any other information it takes into account
> before issuing an access token (basically the same kind of processing
> an Authorization Server always do before issuing a credential). Which
> claims are considered is a deployment choice. Specific profiles may be
> developed for specific types of applications.
>
>
>
> iii.    Considerations of potential semantic
> shifting when doing multiple Claim Transcribing.
>
>
>
> The specification already states that:
>
> "When transcribing claims, it's important that both the place where
>    the claims are given and where they are interpreted agree on the
>
>    semantics and that the access controls are consistent."
>
>
>
> iv.     Loop prevention and
> scalability considerations of the chain etc.
>
>
>
> The risk of looping is no different in this specification than in OAuth in
> general
>
> and is orthogonal to the protocol. Clients calling each other across
> domains
>
> in a loop (looping) is an issue of application design, not how the
> authorization
>
> context is communicated across trust domains. Specifically, it is not the
>
> authorization layer's responsibility to ensure that applications do not
> call each other in loops.
>
>
>
> In terms of scalability, there are no new constraints that do not
> already apply to OAuth deployments.
>
>
>
> These are not necessarily all valid designing considerations, just
> indicate my
> main concern that a distributed multi-hop mechanism might not be simply
> recursed from a bi-directional one.
>
>
>
> This is not a bi-directional flow. Implementation experience suggest
>
> that the recursive approach works in real-world deployments.
>
>
>
> 2. Minor comments mostly regarding to readability:
>
> i.      The solution highly relies on manual operations in multiple
> aspects,
> e.g., the trust relationship setup between domains, the discovery of the
> remote
> authorization server (described as Section 2.2), and the identifier
> transcribing across domains etc. This is totally fine from a solution
> perspective, but maybe it worthies to briefly summarize the operational
> implication in the Abstract/Introduction so that the readers could easily
> capture the essence.
>
>
>
> Details on configuration are deliberately called out of
> scope as it does not impact the protocol's interoperability and is
>
> an implementation detail. This is consistent with OAuth specifications.
>
>
>
> ii.     For the discovery mechanism defined in Section
> 2.2, although it is out of the scope, but since it is an explicit critical
> step
> in the working flow, I’d suggest to elaborate a little. Say, just
> including an
> example the static configuration as mentioned in the texts.
>
>
>
> Discovery is an implementation specific detail and not needed for
> interoperability of the protocol. Profiles may provide additional details
>
> appropriate for more narrowly scoped use cases. Providing more detail than
> what we
> provide in Section 2.2 would be inappropriate (repeated below for
> convenience).
>
>    This specification does not define authorization server discovery.  A
>    client may use the authorization_servers property as defined in OAuth
>    2.0 Protected Resource Metadata [RFC9728], maintain a static mapping
>    or use other means to identify the authorization server.
>
>
>
> iii.    Are some of
> the manual configurations be potentially automated by protocols in the near
> future? E.g., the discovery mechanism. If it is, then maybe briefly
> mention it
> in the Intro?
>
>
>
> It is inappropriate for this specification to speculate about which
> automation mechanisms will be defined in the future, or which ones
>
> will gain market traction.
>
_______________________________________________
OAuth mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to