54 Commits (77ffb1563b3eaa887bb9957c1d97a5d44a54ed22)

Author SHA1 Message Date
Magnus Lindvall cdb9478774 LDAP Public SSH Keys synchronization (#1844)
* Add LDAP Key Synchronization feature

Signed-off-by: Magnus Lindvall <magnus@dnmgns.com>

* Add migration: add login source id column for public_key table

* Only update keys if needed

* Add function to only list pubkey synchronized from ldap

* Only list pub ssh keys synchronized from ldap. Do not sort strings as ExistsInSlice does it.

* Only get keys belonging to current login source id

* Set default login source id to 0

* Some minor cleanup. Add integration tests (updete dep testify)
6 years ago
Lauris BH 501fb228e6
Add option to use paged LDAP search when synchronizing users (#3895) 6 years ago
Morgan Bazalgette 65861900cd Handle refactor (#3339)
* Replace all ctx.Handle with ctx.ServerError or ctx.NotFound

* Change Handle(403) to NotFound, avoid using macaron's NotFound
7 years ago
Lauris BH 524885dd65 LDAP user synchronization (#1478) 7 years ago
Willem van Dreumel 950f2e2074 Additional OAuth2 providers (#1010)
* add google+

* sort signin oauth2 providers based on the name so order is always the same

* update auth tip for google+

* add gitlab provider

* add bitbucket provider (and some go fmt)

* add twitter provider

* add facebook provider

* add dropbox provider

* add openid connect provider incl. new format of tips section in "Add New Source"

* lower the amount of disk storage for each session to prevent issues while building cross platform (and disk overflow)

* imports according to goimport and code style

* make it possible to set custom urls to gitlab and github provider (only these could have a different host)

* split up oauth2 into multiple files

* small typo in comment

* fix indention

* fix indentation

* fix new line before external import

* fix layout of signin part

* update "broken" dependency
7 years ago
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)
7 years ago
Alexander Lunegov d5d21b67d2 Fix string format verbs (#3637) 8 years ago
Lunny Xiao 94da472717 Golint fixed for modules/setting (#262)
* golint fixed for modules/setting

* typo fixed and renamed UNIXSOCKET to UnixSocket
8 years ago
Lunny Xiao 659bc2814c go lint fixed for routers/admin 8 years ago
Sandro Santilli 4247304f5a Update import paths from github.com/go-gitea to code.gitea.io (#135)
- Update import paths from github.com/go-gitea to code.gitea.io
- Fix import path for travis

See https://docs.travis-ci.com/user/languages/go#Go-Import-Path
8 years ago
Sandro Santilli 864d1b1f9f Fix type in unused constant name (#111)
* Write LDAP, SMTP, PAM, DLDAP back to all uppercase

* Fix type in unused constant name

* Other MixCased fixes

* Complete MixerCasing of template constants

* Re uppercase LTS and LDAPS suffixes

* Uppercase JSON suffix in constant names

* Proper case LoginNoType

* Prefix unexported template path constants with "tpl"
8 years ago
Sandro Santilli 05fd9d3f09 Security protocols 8 years ago
Sandro Santilli 7612b5ec40 More mixage 8 years ago
Sandro Santilli 60c82a8780 More... 8 years ago
Rémy Boulanouar 2d68bd1ef9 Change import reference to match gitea instead of gogs (#37) 8 years ago
Unknwon 152e715999 models/login_source: code improvement 8 years ago
Unknwon 99c2ae7b35 #3515 use alert instead 500 for duplicated login source name 8 years ago
Unknwon 401bf944ef Use SecurityProtocol to replace UseSSL in LDAP config
Initially proposed by #2376 and fixes #3068 as well.
8 years ago
Unknwon 514382e2eb Rename module: middleware -> context 8 years ago
Unknwon 045f14fbd0 #1146 finsih UI work for access mode of collaborators
Collaborators have write access as default, and can be changed via repository
collaboration settings page to change between read, write and admin.
8 years ago
Adam Strzelecki 834d92a47b LDAP: Fetch attributes in Bind DN context option
This is feature is workaround for #2628 (JumpCloud) and some other services
that allow LDAP search only under BindDN user account, but not allow any LDAP
search query in logged user DN context.

Such approach is an alternative to minimal permissions security pattern for
BindDN user.
8 years ago
Unknwon 3d5d61778a #1938 #1374 disable password change for non-local users 9 years ago
Adam Strzelecki 573305f3d3 LDAP: Optional user name attribute specification
Consider following LDAP search query example:

    (&(objectClass=Person)(|(uid=%s)(mail=%s)))

Right now on first login attempt Gogs will use the text supplied on login form
as the newly created user name. In example query above the text matches against
both e-mail or user name. So if user puts the e-mail then the new Gogs user
name will be e-mail which may be undesired.

Using optional user name attribute setting we can explicitly say we want Gogs
user name to be certain LDAP attribute eg. `uid`, so even user will use e-mail
to login 1st time, the new account will receive correct user name.
9 years ago
Unknwon f5c7f22cc8 #1637 able to skip verify for LDAP 9 years ago
Unknwon 8e0a69f86a #697 disable captcha and new admin create user UI 9 years ago
Unknwon cd37fccdfb #1625 remove auto_register and makes it default 9 years ago
Unknwon 362d64df04 #1620 add allowed domains for SMTP auth 9 years ago
Unknwon 121a81a2c5 finish new edit auth UI 9 years ago
Unknwon 0617448282 finish new add auth UI 9 years ago
Unknwon fa728d8dff more minor fix on 1581 9 years ago
Sergio Benitez 2d1db4bf05 Added LDAP simple auth support. 9 years ago
Unknwon ea454c21f7 #1542 A way to skip TLS verify for SMTP authentication 9 years ago
Girish Ramakrishnan 24d7a86a8d Set IsAdmin using LDAP
The IsAdmin flag is set based on whether the admin filter
returned any result. The admin filter is applied with the user dn
as the search root.

In the future, we should update IsAdmin as well on each login.
Alternately, we can have a periodic sync operation.
9 years ago
Sergio Benitez 7d84d4a8f0 Significantly enhanced LDAP support in Gogs. 9 years ago
Paolo Borelli 182003aa41 Add PAM authentication 9 years ago
Unknwon 211596f407 #1124 LDAP add and edit form are misleading 9 years ago
Lauris BH 00653e52ee Get username, name, surname and e-mail from LDAP server 10 years ago
Unknwon 7ba9257a7f Add suburl support 10 years ago
Martin van Beurden 0055cbd365 Allow Gogs to run from a suburl behind a reverse proxy. e.g. http://mydomain.com/gogs/
Conflicts:
	modules/setting/setting.go

Conflicts:
	templates/repo/release/list.tmpl
	templates/user/dashboard/dashboard.tmpl

Conflicts:
	routers/repo/setting.go
10 years ago
Unknwon d2aff9a46a Continue working on new admin pages 10 years ago
Unknown 9924e65ca1 In progress of name template name constant 10 years ago
Unknown f160b4f33c Add tar.gz download button and other mirror updates 10 years ago
Unknown 4744996f9a Make gmail auth work 10 years ago
Lunny Xiao f4486f3eec bug fixed #193 10 years ago
Lunny Xiao 7869cfccb9 Merge pull request #192 from DerDackel/ldapssl
Add LDAP over SSL support
10 years ago
Sebastian Jackel eb264a112b Add LDAP over SSL support 10 years ago
Unknown f1130ce5e9 Fix edit auth page bug 10 years ago
Unknown 2c73ced0db Fix #173 10 years ago
Lunny Xiao f68e279150 spell bug fixed 10 years ago
Unknown c5dbc24ca4 UI fix 10 years ago