1
0
Fork 0
Git with a cup of tea! Painless self-hosted all-in-one software development service, including Git hosting, code review, team collaboration, package registry and CI/CD https://github.com/go-gitea/gitea
Go to file
Willem van Dreumel 01d957677f Oauth2 consumer (#679)
* initial stuff for oauth2 login, fails on:
* login button on the signIn page to start the OAuth2 flow and a callback for each provider
Only GitHub is implemented for now
* show login button only when the OAuth2 consumer is configured (and activated)
* create macaron group for oauth2 urls
* prevent net/http in modules (other then oauth2)
* use a new data sessions oauth2 folder for storing the oauth2 session data
* add missing 2FA when this is enabled on the user
* add password option for OAuth2 user , for use with git over http and login to the GUI
* add tip for registering a GitHub OAuth application
* at startup of Gitea register all configured providers and also on adding/deleting of new providers
* custom handling of errors in oauth2 request init + show better tip
* add ExternalLoginUser model and migration script to add it to database
* link a external account to an existing account (still need to handle wrong login and signup) and remove if user is removed
* remove the linked external account from the user his settings
* if user is unknown we allow him to register a new account or link it to some existing account
* sign up with button on signin page (als change OAuth2Provider structure so we can store basic stuff about providers)

* from gorilla/sessions docs:
"Important Note: If you aren't using gorilla/mux, you need to wrap your handlers with context.ClearHandler as or else you will leak memory!"
(we're using gorilla/sessions for storing oauth2 sessions)

* use updated goth lib that now supports getting the OAuth2 user if the AccessToken is still valid instead of re-authenticating (prevent flooding the OAuth2 provider)
2017-02-22 08:14:37 +01:00
.github
cmd Oauth2 consumer (#679) 2017-02-22 08:14:37 +01:00
conf
docker
models Oauth2 consumer (#679) 2017-02-22 08:14:37 +01:00
modules Oauth2 consumer (#679) 2017-02-22 08:14:37 +01:00
options Oauth2 consumer (#679) 2017-02-22 08:14:37 +01:00
public Oauth2 consumer (#679) 2017-02-22 08:14:37 +01:00
routers Oauth2 consumer (#679) 2017-02-22 08:14:37 +01:00
scripts
templates Oauth2 consumer (#679) 2017-02-22 08:14:37 +01:00
vendor Oauth2 consumer (#679) 2017-02-22 08:14:37 +01:00
.dockerignore
.drone.yml
.drone.yml.sig
.editorconfig
.gitattributes
.gitignore
.lgtm
CHANGELOG.md
CONTRIBUTING.md
DCO
Dockerfile
Dockerfile.rpi
LICENSE
MAINTAINERS
Makefile
README.md
README_ZH.md
main.go

README.md

简体中文

Gitea - Git with a cup of tea

Build Status Join the chat at https://gitter.im/go-gitea/gitea Coverage Status Go Report Card GoDoc Release

Dashboard Repository Commits History
Profile Admin Dashboard Diff
Issues Releases Organization

Purpose

The goal of this project is to make the easiest, fastest, and most painless way of setting up a self-hosted Git service. With Go, this can be done with an independent binary distribution across all platforms that Go supports, including Linux, macOS, and Windows on x86, amd64, ARM and PowerPC architectures. Want to try it before doing anything else? Do it online! This project is forked from Gogs.

Notes

  1. YOU MUST READ THE CONTRIBUTORS GUIDE BEFORE STARTING TO WORK ON A PULL REQUEST.
  2. If you found a vulnerability in the project, please write privately to security@gitea.io. Thanks!
  3. If you're interested in using our APIs, we have experimental support with documentation.

Docs

For further information or instructions how to install Gitea please take a look at our documentation, if you can not find some specific information just head over to our Gitter channel to have a chat with us.

Contributing

Fork -> Patch -> Push -> Pull Request

Authors

License

This project is under the MIT License. See the LICENSE file for the full license text.