Skip to content

fix(connector): update authproxy and oauth to match CallbackConnector#4589

Merged
nabokihms merged 1 commit into
dexidp:masterfrom
matzegebbe:fix/authproxy-oauth-pkce-interface-v2
Feb 26, 2026
Merged

fix(connector): update authproxy and oauth to match CallbackConnector#4589
nabokihms merged 1 commit into
dexidp:masterfrom
matzegebbe:fix/authproxy-oauth-pkce-interface-v2

Conversation

@matzegebbe
Copy link
Copy Markdown
Contributor

Fix for #4588

In v2.45.0, PKCE support was added to the OIDC connector (commit 25591eea). This changed the CallbackConnector interface in connector/connector.go:

// OLD (v2.44.0)
LoginURL(s Scopes, callbackURL, state string) (string, error)
HandleCallback(s Scopes, r *http.Request) (identity Identity, err error)

// NEW (v2.45.0)
LoginURL(s Scopes, callbackURL, state string) (string, []byte, error)
HandleCallback(s Scopes, connData []byte, r *http.Request) (identity Identity, err error)

Most connectors (github, gitlab, google, oidc, microsoft, etc.) were updated to match the new interface, but authproxy and oauth were missed.

Because these two connectors no longer satisfy the CallbackConnector interface, the type switch in server/handlers.go:handleConnectorLogin() falls through to the default case, which renders the "Requested resource does not exist." error.

… interface

The PKCE support added in v2.45.0 changed the CallbackConnector interface
signatures but missed updating the authproxy and oauth connectors. This
caused a type assertion failure in handleConnectorLogin(), resulting in
"Requested resource does not exist" errors when using these connectors.

Update LoginURL to return (string, []byte, error) and HandleCallback to
accept a []byte connData parameter for both connectors and their tests.

Signed-off-by: Mathias Gebbe <mathias.gebbe@gmail.com>
@nabokihms nabokihms added the release-note/bug-fix Release note: Bug Fixes label Feb 26, 2026
@nabokihms
Copy link
Copy Markdown
Member

Thanks! I will wait a couple of days for other bugs and then release a patch.

@nabokihms nabokihms merged commit 44e2749 into dexidp:master Feb 26, 2026
10 of 11 checks passed
nabokihms pushed a commit to deckhouse/3p-dex that referenced this pull request Mar 3, 2026
… interface (dexidp#4589)

The PKCE support added in v2.45.0 changed the CallbackConnector interface
signatures but missed updating the authproxy and oauth connectors. This
caused a type assertion failure in handleConnectorLogin(), resulting in
"Requested resource does not exist" errors when using these connectors.

Update LoginURL to return (string, []byte, error) and HandleCallback to
accept a []byte connData parameter for both connectors and their tests.

Signed-off-by: Mathias Gebbe <mathias.gebbe@gmail.com>
xtremerui pushed a commit to concourse/dex that referenced this pull request Mar 19, 2026
<!-- Release notes generated using configuration in .github/release.yml at v2.45.x -->

### Bug Fixes 🐛
- Quote `groups` reserved word in query replacer to fix MySQL 8.0+ storage migration (dexidp#4580)
- Update `authproxy` and `oauth` to match CallbackConnector interface (dexidp#4589)

**Full Changelog**: dexidp/dex@v2.45.0...v2.45.1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

release-note/bug-fix Release note: Bug Fixes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants