Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PKCE #58

Open
teohhanhui opened this issue Jan 13, 2025 · 4 comments
Open

PKCE #58

teohhanhui opened this issue Jan 13, 2025 · 4 comments

Comments

@teohhanhui
Copy link

I'd like to add support for PKCE, specifically:

  1. Allow passing optional code_challenge to auth_url.
  2. Allow passing optional code_verifier to request_token.

(1) is not a strictly necessary change, as we can just add code_challenge and code_challenge_method to the Url returned from auth_url.

(2) is however a required change, as I don't see an existing way to append code_verifier to the request body sent in request_token.

https://datatracker.ietf.org/doc/html/rfc7636

@teohhanhui
Copy link
Author

The draft OAuth 2.1 spec requires the use of PKCE:

Clients MUST use code_challenge and code_verifier and authorization
servers MUST enforce their use except under the conditions described
in Section 7.5.1. In this case, using and enforcing code_challenge
and code_verifier as described in the following is still RECOMMENDED.

https://datatracker.ietf.org/doc/html/draft-ietf-oauth-v2-1-12#section-4.1.1

@kilork
Copy link
Owner

kilork commented Jan 14, 2025

Yeap, this is also on my list:

image

@teohhanhui
Copy link
Author

@kilork Would it be okay if I work on a PR?

@kilork
Copy link
Owner

kilork commented Jan 14, 2025

@teohhanhui It is open source, we always expect contributions, you are welcome. Having some implementation is better than no implementation, after this we can decide on details, how to better fit into project, to not break already existing user base.

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

No branches or pull requests

2 participants