Aaron Parecki
@aaronpk.com
1.9K followers 130 following 240 posts
#OAuth #IndieWeb
Posts Media Videos Starter Packs
aaronpk.com
The dots that Solid OIDC connected were to specifically use the RFC7591 vocabulary in a JSON doc at the client ID URL, whereas IndieAuth originally parsed the metadata from HTML, and OpenID Federation nests the metadata inside an "Entity Statement" JSON wrapper.
aaronpk.com
I mean it was a big mix of things really. Most recently the JSON document idea came from there, but "client IDs as URLs" has been part of IndieAuth since 2015 web.archive.org/web/20150315... and OpenID Federation since 2016 openid.net/specs/openid...
aaronpk.com
Yeah I definitely went hard mode by writing everything from scratch (except the JWT signing). Partly because I wanted to see what it actually takes to implement a library, partly because I can't stand the current state of most language's package management 😅
aaronpk.com
This could replace Dynamic Client Registration in MCP, dramatically simplifying management of clients, as well as enabling servers to limit access to specific clients if they want.
aaronpk.com
The recent surge in interest in MCP has further demonstrated the need for this to be a standardized mechanism, and was the main driver in the latest round of discussion for the document!
aaronpk.com
The mechanism of clients identifying themselves as a URL has been in use in IndieAuth for over a decade, and more recently has been adopted by BlueSky for their OAuth API.
aaronpk.com
Clients identify themselves with their own URL, and host their metadata (name, logo, redirect URL) in a JSON document at that URL. They then use that URL as the client_id to introduce themselves to an authorization server for the first time.
aaronpk.com
The IETF OAuth Working Group has adopted the Client ID Metadata Document specification!

> This specification defines a mechanism through which an OAuth client can identify itself to authorization servers, without prior dynamic client registration or other existing registration.
aaronpk.com
Yes, I helped them with it. They also use the client-id-url technique that came from IndieAuth
aaronpk.com
Thanks to everyone for your contributions and feedback so far!

And thanks to my co-authors Karl McGuinness and Brian Campbell!
aaronpk.com
While it will still be a while before it is an RFC, this is an important step in the standards process, as this is the first time the document is "official"! This signifies that the working group agrees that the problem is worth solving, and agrees on the general direction of the spec.
aaronpk.com
The IETF OAuth Working Group has adopted the Identity Assertion Authorization Grant specification!

datatracker.ietf.org/doc/draft-ie...

This is the basis of Cross App Access (XAA), providing IT admins better visibility and control by configuring the app-to-app connections in their enterprise IdP.
Identity Assertion Authorization Grant
This specification provides a mechanism for an application to use an identity assertion to obtain an access token for a third-party API by coordinating through a common enterprise identity provider us...
datatracker.ietf.org
aaronpk.com
DPoP should have added a section for the device code flow like this section about PAR. datatracker.ietf.org/doc/html/rfc...

The device code flow is similar to PAR: the initial request is backchannel to the AS. So the same considerations that apply to PAR here apply to the device code flow.
RFC 9449: OAuth 2.0 Demonstrating Proof of Possession (DPoP)
This document describes a mechanism for sender-constraining OAuth 2.0 tokens via a proof-of-possession mechanism on the application level. This mechanism allows for the detection of replay attacks wit...
datatracker.ietf.org
aaronpk.com
I agree DPoP binding should start with the initial request. But at the end of the day it doesn't make *that* much of a difference. The bigger risk with the device code flow is the phishing problem, which DPoP doesn't solve.
aaronpk.com
Update: it worked! I only had to tap my phone and I got through TSA!
aaronpk.com
It has come to my attention that I have previously loaded my passport into my Android phone as an "ID pass" which should theoretically get me through TSA legitimately
aaronpk.com
If they do it like the transit card it'll still work when the phone battery is dead!
aaronpk.com
Maybe some day Oregon will get on the mDL bandwagon and I won't need to rely on this silly piece of plastic anymore