]> source.dussan.org Git - gitea.git/commit
Pre-register OAuth2 applications for git credential helpers (#26291)
authorDenys Konovalov <kontakt@denyskon.de>
Wed, 9 Aug 2023 12:24:07 +0000 (14:24 +0200)
committerGitHub <noreply@github.com>
Wed, 9 Aug 2023 12:24:07 +0000 (14:24 +0200)
commit63ab92d7971e4931e98f014f2c5385d2242fa780
tree8e5aabe7ab6d1b24578fd49dc8d4fc0fe8fc2478
parentd41aee1d1e1cb07ccf71330dd3414beff603e48a
Pre-register OAuth2 applications for git credential helpers (#26291)

This PR is an extended implementation of #25189 and builds upon the
proposal by @hickford in #25653, utilizing some ideas proposed
internally by @wxiaoguang.

Mainly, this PR consists of a mechanism to pre-register OAuth2
applications on startup, which can be enabled or disabled by modifying
the `[oauth2].DEFAULT_APPLICATIONS` parameter in app.ini. The OAuth2
applications registered this way are being marked as "locked" and
neither be deleted nor edited over UI to prevent confusing/unexpected
behavior. Instead, they're being removed if no longer enabled in config.

![grafik](https://github.com/go-gitea/gitea/assets/47871822/81a78b1c-4b68-40a7-9e99-c272ebb8f62e)

The implemented mechanism can also be used to pre-register other OAuth2
applications in the future, if wanted.

Co-authored-by: hickford <mirth.hickford@gmail.com>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
---------

Co-authored-by: M Hickford <mirth.hickford@gmail.com>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
custom/conf/app.example.ini
docs/content/administration/config-cheat-sheet.en-us.md
docs/content/development/oauth2-provider.en-us.md
models/auth/oauth2.go
modules/setting/oauth2.go
options/locale/locale_en-US.ini
routers/init.go
routers/web/admin/applications.go
routers/web/repo/http.go
templates/user/settings/applications_oauth2_list.tmpl