[Openid-specs-ab] Call for Adoption for the OpenID Connect Key Binding Specification

Aaron Parecki aaron.parecki at okta.com
Fri Sep 26 22:32:30 UTC 2025


I do not support adoption of the draft as it currently stands, for similar
reasons to the previous replies on this topic.


The problematic language is the non-normative suggestion of using an ID
token as a bearer token to access resources at other domains. We should not
be encouraging this behavior even if it exists in the wild.


However, I do have a use for binding a DPoP key to an ID Token. One
application of the OAuth draft "Identity and Authorization Chaining Across
Domains"
https://datatracker.ietf.org/doc/draft-ietf-oauth-identity-chaining/
involves exchanging an initial token from the domain that issued it (using
RFC8693 Token Exchange) for a token that moves across domains and is later
exchanged for an access token using RFC7523. This is further profiled by
the draft "Identity Assertion Authorization Grant"
https://datatracker.ietf.org/doc/draft-parecki-oauth-identity-assertion-authz-grant/
(currently in the middle of the working group adoption call), which
specifies that the initial token is an identity assertion such as an ID
token.


In this flow, the OpenID Provider issues an ID token to a client. The
client uses Token Exchange to exchange the ID token back at the OpenID
Provider for a new JWT. It takes the new JWT to an authorization server in
a different trust domain exchanging it for an OAuth access token.


It would be valuable to be able to bind the ID token to the client using
DPoP, which is possible using the method described in this OpenID draft.
This use of the ID token doesn't have the problematic attribute of being
used directly in another domain.


I believe the sorts of cross-domain uses of ID tokens mentioned in the
draft would likely be better accomplished using "Identity and Authorization
Chaining Across Domains", which properly scopes the tokens to each trust
domain.


All this said, I do not believe the draft should be adopted as is, because
of the language suggesting it is okay to use ID tokens directly across
domains. I would not want an OIDF draft to endorse this behavior.

Aaron Parecki





On Fri, Sep 26, 2025 at 1:37 PM Ralph Bragg via Openid-specs-ab <
openid-specs-ab at lists.openid.net> wrote:

> *This message originated outside your organization.*
>
> ------------------------------
>
> Likewise, I do not support utilisation the id token In this way for the
> reasons already raised. We’ve just had issues with multiple aud values
> being identified as a significant source of vulnerability with PKJ so
> extending / modifying an id tokens aud raises too many concerns for me as a
> potential mitigation. I don’t believe that this token should be relied on
> by any actor other than the intended audience.
>
> Ralph Bragg
>
> Chief Technology Officer
>
> M.
>
>
>
> +447890130559
>
> T.
>
>
>
> +44 20 4583 6770
>
> ralph.bragg at raidiam.com
>
>
> ------------------------------
> *From:* Openid-specs-ab <openid-specs-ab-bounces at lists.openid.net> on
> behalf of Andrii Deinega via Openid-specs-ab <
> openid-specs-ab at lists.openid.net>
> *Sent:* Saturday, September 27, 2025 4:26:07 AM
> *To:* Artifact Binding/Connect Working Group <
> openid-specs-ab at lists.openid.net>
> *Cc:* Andrii Deinega <andrii.deinega at gmail.com>
> *Subject:* Re: [Openid-specs-ab] Call for Adoption for the OpenID Connect
> Key Binding Specification
>
> I believe that any recipient of a JWT (in this case, an ID Token) should
> immediately reject it if it isn't the intended audience (which is indicated
> by the aud claim), regardless of whether cryptographic binding is present
> or not. This alone makes the statement below too problematic for me.
>
> When an RP wants to prove to another system that it has authenticated a
> user, it may present the ID Token as a bearer token. However, bearer tokens
> are vulnerable to theft and replay attacks - if an attacker intercepts the
> ID Token, they can impersonate the authenticated user to downstream systems
> that accept a ID Token as a bearer token.
>
>
> It's difficult to imagine multiple systems (recipients) sharing the same
> value in the aud claim (this value must be a client_id of the RP per the
> Core spec). It's fair to add the aud claim may contain an array with more
> than one element, but it's also fair to say this practice is discouraged
> (1) and comes with additional complexity and concerns (2).
>
> At the end of the day... I see a lot of value, and I see the reason why
> people want to have the standard around "proving to another system that it
> has authenticated a user," but I don't think that repurposing existing ID
> Tokens for it is the right way to go.... I’d suggest, and actually love to
> see - the use of SD JWT VCs (or other VCs) for this purpose instead.
>
> I haven’t reached the point where I need to "touch" Justin’s concerns... I
> fully agree with him on them.
>
> All the best,
> Andrii
>
> On Fri, Sep 26, 2025 at 9:05 AM Justin Richer via Openid-specs-ab <
> openid-specs-ab at lists.openid.net> wrote:
>
> I do not support adoption of this work. The ID Token is not intended to be
> a conveyable artifact, and using it as such is a security layer boundary.
> It’s hard enough to get people to not use ID Tokens as Access Tokens today,
> since a lot of developers see all JWTs as equivalent, really. This work
> would make this problem significantly worse.
>
>  — Justin
>
> On Sep 15, 2025, at 6:57 PM, Michael Jones via Openid-specs-ab <
> openid-specs-ab at lists.openid.net> wrote:
>
> This starts a two-week call for feedback on whether to adopt the OpenID
> Connect OpenID Connect Key Binding specification contributed to the working
> group by Dick Hardt and Ethan Heilman as an OpenID Connect Working Group
> specification.  Please reply-all by Monday, September 29, 2025 saying
> whether you are favor of adoption or not, also saying why.
>
> The specification was contributed at
> https://lists.openid.net/pipermail/openid-specs-ab/2025-August/010890.html
> <https://urldefense.com/v3/__https://lists.openid.net/pipermail/openid-specs-ab/2025-August/010890.html__;!!PwKahg!6QnHIKzhjBzjwwVrJqFfHF90LftISX-Hsr1obR0wAaEN3vBfUK_FDeluuf1qi3PARLAeMVkMdeDKDke1X_e_ZGJaQ8YWyonU$>.
> It has been extensively discussed by the working group both on calls and on
> the mailing list.  From my observations of the discussion as a working
> group chair, I believe that there is consensus that it would be useful to
> have a standard solving the problem addressed by this specification.
>
>                                                 Writing as a working group
> chair,
>                                                                 -- Mike
>
> _______________________________________________
> Openid-specs-ab mailing list
> Openid-specs-ab at lists.openid.net
> https://lists.openid.net/mailman/listinfo/openid-specs-ab
> <https://urldefense.com/v3/__https://lists.openid.net/mailman/listinfo/openid-specs-ab__;!!PwKahg!6QnHIKzhjBzjwwVrJqFfHF90LftISX-Hsr1obR0wAaEN3vBfUK_FDeluuf1qi3PARLAeMVkMdeDKDke1X_e_ZGJaQ2Sra7o3$>
>
>
> _______________________________________________
> Openid-specs-ab mailing list
> Openid-specs-ab at lists.openid.net
> https://lists.openid.net/mailman/listinfo/openid-specs-ab
> <https://urldefense.com/v3/__https://lists.openid.net/mailman/listinfo/openid-specs-ab__;!!PwKahg!6QnHIKzhjBzjwwVrJqFfHF90LftISX-Hsr1obR0wAaEN3vBfUK_FDeluuf1qi3PARLAeMVkMdeDKDke1X_e_ZGJaQ2Sra7o3$>
>
> _______________________________________________
> Openid-specs-ab mailing list
> Openid-specs-ab at lists.openid.net
> https://lists.openid.net/mailman/listinfo/openid-specs-ab
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openid.net/pipermail/openid-specs-ab/attachments/20250926/37abe1df/attachment-0001.htm>


More information about the Openid-specs-ab mailing list