forgejo/modules
Martin Michaelis 55eb1745bd
OAuth2 auto-register (#5123)
* Refactored handleOAuth2SignIn in routers/user/auth.go

The function handleOAuth2SignIn was called twice but some code path could only
be reached by one of the invocations. Moved the unnecessary code path out of
handleOAuth2SignIn.


* Refactored user creation

There was common code to create a user and display the correct error message.
And after the creation the only user should be an admin and if enabled a
confirmation email should be sent. This common code is now abstracted into
two functions and a helper function to call both.

* Added auto-register for OAuth2 users

If enabled new OAuth2 users will be registered with their OAuth2 details.
The UserID, Name and Email fields from the gothUser are used.
Therefore the OpenID Connect provider needs additional scopes to return
the coresponding claims.

* Added error for missing fields in OAuth2 response

* Linking and auto linking on oauth2 registration

* Set default username source to nickname

* Add automatic oauth2 scopes for github and google

* Add hint to change the openid connect scopes if fields are missing

* Extend info about auto linking security risk

Co-authored-by: Viktor Kuzmin <kvaster@gmail.com>
Signed-off-by: Martin Michaelis <code@mgjm.de>
2021-04-14 14:02:12 +02:00
..
analyze Speed up enry.IsVendor (#15213) 2021-04-01 19:41:09 +02:00
auth OAuth2 auto-register (#5123) 2021-04-14 14:02:12 +02:00
avatar Avatars and Repo avatars support storing in minio (#12516) 2020-10-14 21:07:51 +08:00
base Add some Unit-Tests (#14500) 2021-01-28 19:08:11 +01:00
cache [Vendor] Update go-redis to v8.5.0 (#13749) 2021-02-10 21:28:32 +00:00
charset Ensure that the detected charset order is set in chardet test (#12574) 2020-08-23 14:15:29 +01:00
context Turn RepoRef and RepoAssignment back into func(*Context) (#15372) 2021-04-09 20:26:08 -04:00
convert [API] pull notification subject status: add "merged" (#15344) 2021-04-09 03:36:23 +02:00
cron Cron job to cleanup hook_task table (#13080) 2021-01-26 22:02:42 +01:00
csv Add Tabular Diff for CSV files (#14661) 2021-03-29 22:44:28 +02:00
doctor Delete Labels & IssueLabels on Repo Delete too (#15039) 2021-03-19 21:01:24 +02:00
emoji Fix several render issues (#14986) 2021-03-16 00:20:05 +01:00
eventsource Migrate to use jsoniter instead of encoding/json (#14841) 2021-03-01 22:08:10 +01:00
generate Add gitea-vet (#10948) 2020-04-05 07:20:50 +01:00
git use repo1_bare to test against (#15402) 2021-04-11 11:45:29 -04:00
gitgraph [Refactor] CombinedStatus and CommitStatus related functions & structs (#14026) 2020-12-18 11:33:32 +08:00
graceful Fix regression from #14623 - use debug SVC handler only on interactive sessions (#15210) 2021-03-31 22:48:48 +03:00
hcaptcha hCaptcha Support (#12594) 2020-10-02 23:37:53 -04:00
highlight Use existing analyzer module for language detection for highlighting (#13522) 2020-11-13 16:13:41 -05:00
httpcache Add ETag header (#15370) 2021-04-12 10:49:26 -04:00
httplib Migrate to use jsoniter instead of encoding/json (#14841) 2021-03-01 22:08:10 +01:00
indexer Speed up enry.IsVendor (#15213) 2021-04-01 19:41:09 +02:00
lfs Add LFS Migration and Mirror (#14726) 2021-04-08 18:25:57 -04:00
log Migrate to use jsoniter instead of encoding/json (#14841) 2021-03-01 22:08:10 +01:00
markup Add NeedPostProcess for Parser interface to improve performance of csv render (#15153) 2021-04-13 15:06:31 +08:00
matchlist Add Allow-/Block-List for Migrate & Mirrors (#13610) 2020-11-28 19:37:58 -05:00
metrics Prometheus endpoint (#5256) 2018-11-04 22:20:00 -05:00
migrations Add LFS Migration and Mirror (#14726) 2021-04-08 18:25:57 -04:00
nosql [Vendor] Update go-redis to v8.5.0 (#13749) 2021-02-10 21:28:32 +00:00
notification [refactor] mailer service (#15072) 2021-04-02 11:25:13 +01:00
options Add StatDir and replace com.StatDir (#14099) 2020-12-22 07:40:57 +08:00
password Check passwords against HaveIBeenPwned (#12716) 2020-09-08 17:06:39 -05:00
pprof Add golangci (#6418) 2019-06-12 15:41:28 -04:00
private Migrate to use jsoniter instead of encoding/json (#14841) 2021-03-01 22:08:10 +01:00
process Code Formats, Nits & Unused Func/Var deletions (#15286) 2021-04-09 09:40:34 +02:00
public Add ETag header (#15370) 2021-04-12 10:49:26 -04:00
queue Always set the merge base used to merge the commit (#15352) 2021-04-10 09:27:29 +01:00
recaptcha Migrate to use jsoniter instead of encoding/json (#14841) 2021-03-01 22:08:10 +01:00
references Code Formats, Nits & Unused Func/Var deletions (#15286) 2021-04-09 09:40:34 +02:00
repofiles Code Formats, Nits & Unused Func/Var deletions (#15286) 2021-04-09 09:40:34 +02:00
repository Add LFS Migration and Mirror (#14726) 2021-04-08 18:25:57 -04:00
secret Attachments: Add extension support, allow all types for releases (#12465) 2020-10-05 01:49:33 -04:00
session Migrate to use jsoniter instead of encoding/json (#14841) 2021-03-01 22:08:10 +01:00
setting OAuth2 auto-register (#5123) 2021-04-14 14:02:12 +02:00
ssh Make internal SSH server host key path configurable (#14918) 2021-03-08 03:43:59 +01:00
storage Code Formats, Nits & Unused Func/Var deletions (#15286) 2021-04-09 09:40:34 +02:00
structs Add LFS Migration and Mirror (#14726) 2021-04-08 18:25:57 -04:00
svg Fix filepath basename on Windows for SVG bindata (#12241) 2020-07-13 21:16:40 +01:00
sync Fix missing unlock in uniquequeue (#9790) 2020-01-15 23:58:33 +02:00
task Migrate to use jsoniter instead of encoding/json (#14841) 2021-03-01 22:08:10 +01:00
templates Prevent incorrect HTML escaping in swagger.json (#14957) 2021-03-11 23:43:04 -05:00
test Move middlewares to web/middleware (#14480) 2021-01-30 10:55:53 +02:00
timeutil Fix display since time round (#14226) 2021-01-28 13:29:22 +01:00
translation Use i18n.Reset to reload locales (#15073) 2021-03-21 16:11:36 +01:00
upload Update golangci-lint to version 1.31.0 (#13102) 2020-10-11 21:27:20 +01:00
uri Dump github/gitlab/gitea repository data to a local directory and restore to gitea (#12244) 2020-12-27 11:34:19 +08:00
user Add gitea-vet (#10948) 2020-04-05 07:20:50 +01:00
util Add LFS Migration and Mirror (#14726) 2021-04-08 18:25:57 -04:00
validation Move macaron to chi (#14293) 2021-01-26 16:36:53 +01:00
web Fix bug in Wrap (#15302) 2021-04-06 17:40:56 +02:00