forgejo-federation/services/auth
Hasnain Lakhani 64c3d55de7
Add support for authentication based on reverse proxy email (#19949)
This is useful in scenarios where the reverse proxy may have knowledge
of user emails, but does not know about usernames set on gitea,
as in the feature request in #19948.

I tested this by setting up a fresh gitea install with one user `mhl`
and email `m.hasnain.lakhani@gmail.com`. I then created a private repo,
and configured gitea to allow reverse proxy authentication.

Via curl I confirmed that these two requests now work and return 200s:

curl http://localhost:3000/mhl/private -I --header "X-Webauth-User: mhl"
curl http://localhost:3000/mhl/private -I --header "X-Webauth-Email: m.hasnain.lakhani@gmail.com"

Before this commit, the second request did not work.

I also verified that if I provide an invalid email or user,
a 404 is correctly returned as before

Closes #19948

Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: 6543 <6543@obermui.de>
2022-09-28 02:00:15 +02:00
..
source Fix typo in source (#20723) 2022-08-09 09:53:40 +08:00
auth.go Remove dependent on session auth for api/v1 routers (#19321) 2022-04-08 06:22:10 +02:00
auth_test.go format with gofumpt (#18184) 2022-01-20 18:46:10 +01:00
basic.go Move some files into models' sub packages (#20262) 2022-08-25 10:31:57 +08:00
group.go Share HTML template renderers and create a watcher framework (#20218) 2022-08-28 10:43:25 +01:00
httpsign.go Implement http signatures support for the API (#17565) 2022-06-05 08:16:14 +01:00
interface.go Share HTML template renderers and create a watcher framework (#20218) 2022-08-28 10:43:25 +01:00
oauth2.go Move some files into models' sub packages (#20262) 2022-08-25 10:31:57 +08:00
reverseproxy.go Add support for authentication based on reverse proxy email (#19949) 2022-09-28 02:00:15 +02:00
session.go format with gofumpt (#18184) 2022-01-20 18:46:10 +01:00
signin.go Restore user autoregistration with email addresses (#19261) 2022-03-31 15:20:25 +02:00
source.go Refactor auth package (#17962) 2022-01-02 21:12:35 +08:00
sspi_windows.go Share HTML template renderers and create a watcher framework (#20218) 2022-08-28 10:43:25 +01:00
sync.go Refactor auth package (#17962) 2022-01-02 21:12:35 +08:00