Skip to content

Accept client ID metadata documents that list none among supported methods - #1962

Draft
eglitobias wants to merge 7 commits into
doorkeeper-gem:mainfrom
eglitobias:feature/cimd-auth-methods-supported
Draft

eglitobias wants to merge 7 commits into
doorkeeper-gem:mainfrom
eglitobias:feature/cimd-auth-methods-supported

Conversation

@eglitobias

@eglitobias eglitobias commented Sep 30, 2026 •

Copy link
Copy Markdown
Contributor

Follow-up to #1956, split out on review. Builds on it, so only the last commit (de1b9b6) is new here; I'll rebase once #1956 lands.

A document now also qualifies as a public client when none is among its token_endpoint_auth_methods_supported, as long as no shared-secret method is listed. ChatGPT publishes exactly that (https://chatgpt.com/oauth/client.json: private_key_jwt preferred, none supported).

This goes beyond draft-02: the plural comes from OpenID Connect RP Metadata Choices, and oauth-wg/draft-ietf-oauth-client-id-metadata-document#99 (open) would add it to the draft.

@eglitobias
eglitobias force-pushed the feature/cimd-auth-methods-supported branch from 8514de8 to 84abd49 Compare September 30, 2026 13:42
@eglitobias
eglitobias force-pushed the feature/cimd-auth-methods-supported branch 13 times, most recently from 2f95d1a to 61e28e7 Compare October 6, 2026 12:33
An https client_id is fetched, validated and kept as a marked public application row.
Both are public and unregistered (RFC 9700 §2.1.1).
A savepoint keeps a caller's transaction usable; the re-read runs on the primary and compares the uid exactly.
Without the columns the challenge goes unchecked; an empty list is refused before anything is saved.
@eglitobias
eglitobias force-pushed the feature/cimd-auth-methods-supported branch from 61e28e7 to 248463d Compare October 6, 2026 13:03
ChatGPT prefers private_key_jwt but also lists none in token_endpoint_auth_methods_supported.
@eglitobias
eglitobias force-pushed the feature/cimd-auth-methods-supported branch from 248463d to de1b9b6 Compare October 7, 2026 13:35

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant