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.
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>
4 years ago
..
ldap [Vendor] Update go-ldap to v3.2.4 (#13163) 4 years ago
oauth2 Fix creating OAuth2 auth source from CLI (#14116) 4 years ago
openid Use gitea forked macaron (#7933) 5 years ago
pam Remove PAM from auth dropdown when unavailable (#13276) 4 years ago
sso API: Make BasicAuth Prefix case insensitive (#14106) 4 years ago
admin.go Multiple small admin dashboard fixes (#12153) 4 years ago
auth.go Add single sign-on support via SSPI on Windows (#8463) 5 years ago
auth_form.go Custom icons for OAuth sources (#14161) 4 years ago
org.go Team permission to create repository in organization (#8312) 5 years ago
repo_branch_form.go Use gitea forked macaron (#7933) 5 years ago
repo_form.go Add block on official review requests branch protection (#13705) 4 years ago
repo_form_test.go Use gitea forked macaron (#7933) 5 years ago
user_form.go Minimal OpenID Connect implementation (#14139) 4 years ago
user_form_auth_openid.go hCaptcha Support (#12594) 4 years ago
user_form_test.go Block registration based on email domain (#5157) 6 years ago