Hi Pieter,

Thanks for the update. No more problems from my side.

B.R.
Bing

From: Pieter Kasselman <[email protected]>
Sent: Tuesday, June 2, 2026 7:23 PM
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

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]<mailto:[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]<mailto:[email protected]>>
Sent: Saturday, May 23, 2026 3:23 AM
To: Liubing (Leo) <[email protected]<mailto:[email protected]>>
Cc: [email protected]<mailto:[email protected]>; 
[email protected]<mailto:[email protected]>;
 [email protected]<mailto:[email protected]>; 
[email protected]<mailto:[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://datatracker.ietf.org/doc/draft-ietf-oauth-identity-assertion-authz-grant/<http://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]<mailto:[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://datatracker.ietf.org/doc/draft-ietf-oauth-identity-assertion-authz-grant/<http://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