You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gitea/routers/web/auth
Denys Konovalov 7d855efb1f
Allow for PKCE flow without client secret + add docs (#25033)
The PKCE flow according to [RFC
7636](https://datatracker.ietf.org/doc/html/rfc7636) allows for secure
authorization without the requirement to provide a client secret for the
OAuth app.

It is implemented in Gitea since #5378 (v1.8.0), however without being
able to omit client secret.
Since #21316 Gitea supports setting client type at OAuth app
registration.

As public clients are already forced to use PKCE since #21316, in this
PR the client secret check is being skipped if a public client is
detected. As Gitea seems to implement PKCE authorization correctly
according to the spec, this would allow for PKCE flow without providing
a client secret.

Also add some docs for it, please check language as I'm not a native
English speaker.

Closes #17107
Closes #25047
2 years ago
..
2fa.go refactor some functions to support ctx as first parameter (#21878) 2 years ago
auth.go Split "modules/context.go" to separate files (#24569) 2 years ago
linkaccount.go Add context cache as a request level cache (#22294) 2 years ago
main_test.go Implement FSFE REUSE for golang files (#21840) 2 years ago
oauth.go Allow for PKCE flow without client secret + add docs (#25033) 2 years ago
oauth_test.go Add context cache as a request level cache (#22294) 2 years ago
openid.go Refactor cookie (#24107) 2 years ago
password.go Split "modules/context.go" to separate files (#24569) 2 years ago
webauthn.go Replace deprecated Webauthn library (#22400) 2 years ago