1
0
Fork 0
forgejo/modules
Johnny Oskarsson a07e67d9cc
Minimal OpenID Connect implementation (#14139)
This is "minimal" in the sense that only the Authorization Code Flow
from OpenID Connect Core is implemented.  No discovery, no configuration
endpoint, and no user scope management.

OpenID Connect is an extension to the (already implemented) OAuth 2.0
protocol, and essentially an `id_token` JWT is added to the access token
endpoint response when using the Authorization Code Flow.  I also added
support for the "nonce" field since it is required to be used in the
id_token if the client decides to include it in its initial request.

In order to enable this extension an OAuth 2.0 scope containing
"openid" is needed. Other OAuth 2.0 requests should not be impacted by
this change.

This minimal implementation is enough to enable single sign-on (SSO)
for other sites, e.g. by using something like `mod_auth_openidc` to
only allow access to a CI server if a user has logged into Gitea.

Fixes: #1310

Co-authored-by: 6543 <6543@obermui.de>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: zeripath <art27@cantab.net>
2021-01-02 00:33:27 +08:00
..
analyze
auth Minimal OpenID Connect implementation (#14139) 2021-01-02 00:33:27 +08:00
avatar
base migrate from com.* to alternatives (#14103) 2020-12-25 11:59:32 +02:00
cache Use native git variants by default with go-git variants as build tag (#13673) 2020-12-17 22:00:47 +08:00
charset
context Inline manifest.json (#14038) 2020-12-22 19:13:50 +08:00
convert migrate from com.* to alternatives (#14103) 2020-12-25 11:59:32 +02:00
cron Added option to disable migrations (#13114) 2020-12-21 15:39:41 +01:00
doctor Refactor doctor (#12264) 2020-12-02 06:56:04 +02:00
emoji
eventsource
generate
git migrate from com.* to alternatives (#14103) 2020-12-25 11:59:32 +02:00
gitgraph [Refactor] CombinedStatus and CommitStatus related functions & structs (#14026) 2020-12-18 11:33:32 +08:00
graceful Move install pages out of main macaron routes (#13195) 2020-10-19 17:03:08 -04:00
hcaptcha
highlight Use existing analyzer module for language detection for highlighting (#13522) 2020-11-13 16:13:41 -05:00
httpcache HTTP cache rework and enable caching for storage assets (#13569) 2020-11-17 17:44:52 -05:00
httplib
indexer Use native git variants by default with go-git variants as build tag (#13673) 2020-12-17 22:00:47 +08:00
lfs Move LFSLock APIFormat into convert package (#13808) 2020-12-03 16:05:48 +02:00
log Refactor Logger (#13294) 2020-10-31 01:36:46 -04:00
markup Fix bug of link query order on markdown render (#14156) 2020-12-29 00:28:27 +08:00
matchlist Add Allow-/Block-List for Migrate & Mirrors (#13610) 2020-11-28 19:37:58 -05:00
metrics
migrations Dump github/gitlab/gitea repository data to a local directory and restore to gitea (#12244) 2020-12-27 11:34:19 +08:00
nosql
notification Cause NotifyMigrateRepository to emit a repo create webhook (#14004) 2020-12-17 13:26:22 +01:00
options Add StatDir and replace com.StatDir (#14099) 2020-12-22 07:40:57 +08:00
password
pprof
private Fix send mail (#13312) 2020-10-26 12:42:27 -04:00
process
public Improve vfsgen to not unzip bindata files but send to browser directly (#7109) 2020-12-24 12:25:17 +08:00
queue
recaptcha
references Add mentionable teams to tributeValues and change team mention rules to gh's style (#13198) 2020-12-21 16:39:28 +01:00
repofiles Standardize Co-Authored-By / Reviewed-By strings (#14097) 2020-12-21 21:19:33 -05:00
repository Check for 'main' as potential default branch name (#14193) 2020-12-30 15:46:26 +00:00
secret
session
setting Fix manifest encoding (#14114) 2020-12-23 19:09:54 +00:00
ssh migrate from com.* to alternatives (#14103) 2020-12-25 11:59:32 +02:00
storage Fix Storage mapping (#13297) 2020-10-25 17:19:06 +00:00
structs Added option to disable migrations (#13114) 2020-12-21 15:39:41 +01:00
svg
sync
task Migrations: Use Process Manager to create own Context (#13792) 2020-12-02 18:36:06 +00:00
templates Improve label and text wrapping (#14113) 2020-12-29 18:48:28 -05:00
test
timeutil
upload
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
util migrate from com.* to alternatives (#14103) 2020-12-25 11:59:32 +02:00
validation