markbates / markbates/goth

openidConnect: auto-configure PKCE based on the contents of the discovery document

Open
#639 1 comment 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Go
Stars
6.6k
Forks
631
PR merge metrics
No merged PRs in 30d

Description

I'm having issues setting up a custom oidc auth provider in Gitea using the goth openidConnect provider. The auth requests are denied because my provider mandates the use of PKCE.

This could be configured at the provider level according to #473 I think, but ideally the feature should be picked up from the discovery document: the presence of a non-empty `code_challenge_methods_supported` in the json response signals that PKCE is available, and lists the supported challenge methods. If the provider and the RP are spec-compliant, it should "just work" without additional config.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing the openidConnect provider's discovery-document handling and existing PKCE configuration, then inspect how code_challenge_methods_supported is represented. Done means a non-empty supported-methods value from the discovery response automatically enables compatible PKCE behavior without additional provider configuration.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
authentication
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.