RETIRED, Gerrit as used by OpenStack
Go to file
David Ostrovsky 8b5aa48f1d Support hybrid OpenID and OAuth2 authentication
e9707d8f85 exposed OAuth authentication extension point. Using this
extension point plugins can offer OAuth2 authentications.

That is fine for new Gerrit sites, which can restrict the auth scheme
to OAuth2 only.

For the existing sites, that rely on non SSO OpenID auth scheme it
doesn't work to migrate to OAuth2 because of diverse contributors
base that use different OpenID providers. Not all OpenID providers
offer OAuth2 protocol. Particularly, widespread OpenID providers
among open source Gerrit communities are Launchpad/UbuntuOne and
FedoraProject don't offer OAuth2 protocol. To not lock out those
contributors from being able to contribute to open source Gerrit
based projects OpenID must still be supported.

With Google's shut down of their OpenID service in April 2015, big
user base is locked out from contribution to Gerrit based projects
that only support OpenID auth scheme.

The only way to still support OpenID 2.0 providers and new OAuth2
based protocol is native support for hybrid authentication scheme
in Gerrit.

This change extends OpenID auth scheme by making it aware of optional
OAuth plugin-based authentication.

When no oauth-provider plugins are deployed, OpenID auth scheme works
as usual. When OAuth provider plugins are deployed, OAuth2 providers
are offered on the OpenID login form, in addition to hard coded Yahoo!
and Launchpad OpenID providers: [1].

[1] http://imgur.com/IcCrChN

Change-Id: I6d70212f4fea5443a6322c7da683e1e943d058eb
2015-04-16 10:34:12 +00:00
.settings Eclipse: Bump java source and target level to 7 2013-11-29 00:15:50 +01:00
bucklets Buck: Allow to co-exist in tree and standalone plugins 2014-06-26 10:59:25 +02:00
contrib Allow to download reposize.sh script from Gerrit 2014-05-09 16:20:51 +02:00
Documentation Revert "Revert "Allow configuration of SSH rekey values"" 2015-04-06 12:33:06 +09:00
gerrit-acceptance-tests Update JGit to version 3.5.1.201410131835-r 2014-10-22 13:01:27 -04:00
gerrit-antlr Buck: Remove usage of genfile() 2014-06-10 07:14:18 +00:00
gerrit-cache-h2 Honor expireAfterWrite in the H2CacheImpl 2014-12-03 16:25:05 +09:00
gerrit-common OpenID: Add support for Launchpad on the login form 2015-03-01 22:25:50 +01:00
gerrit-extension-api Update version to 2.10.2 2015-03-26 16:38:04 +01:00
gerrit-gwtdebug Prevent StackOverflowError in JettyTreeLogger 2014-02-07 12:54:18 +00:00
gerrit-gwtexpui Do not linkify trailing dot or comma 2014-07-16 17:24:32 +09:00
gerrit-gwtui Remove unused imports 2015-04-06 22:39:45 +09:00
gerrit-gwtui-common Buck: Rename gwtxml to gwt_xml in gwt_module() 2014-05-19 12:26:50 -07:00
gerrit-httpd Support hybrid OpenID and OAuth2 authentication 2015-04-16 10:34:12 +00:00
gerrit-launcher Apply "type inference for generic instance creation" Java 7 feature 2014-04-26 15:27:57 +02:00
gerrit-lucene OnlineReindexer: log the success/failure numbers on exit 2015-03-25 13:57:05 +01:00
gerrit-main Build Main for Java 1.2 2013-11-30 01:53:00 -08:00
gerrit-oauth Merge "OAuth: Respect servlet context path in URL for login token" into stable-2.10 2015-04-14 05:14:40 +00:00
gerrit-openid Support hybrid OpenID and OAuth2 authentication 2015-04-16 10:34:12 +00:00
gerrit-patch-commonsnet Replace 'for' loop with 'foreach' 2013-12-04 01:02:53 +04:00
gerrit-patch-jgit Buck: Rename gwtxml to gwt_xml in gwt_module() 2014-05-19 12:26:50 -07:00
gerrit-pgm Revert "Downgrade SSHD to 0.9.0-4-g5967cfd" 2015-04-06 12:26:07 +09:00
gerrit-plugin-api Update version to 2.10.2 2015-03-26 16:38:04 +01:00
gerrit-plugin-archetype Update version to 2.10.2 2015-03-26 16:38:04 +01:00
gerrit-plugin-gwt-archetype Update version to 2.10.2 2015-03-26 16:38:04 +01:00
gerrit-plugin-gwtui Update version to 2.10.2 2015-03-26 16:38:04 +01:00
gerrit-plugin-js-archetype Update version to 2.10.2 2015-03-26 16:38:04 +01:00
gerrit-prettify Buck: Rename gwtxml to gwt_xml in gwt_module() 2014-05-19 12:26:50 -07:00
gerrit-reviewdb Expose extension point for generic OAuth providers 2015-03-06 01:10:40 +01:00
gerrit-server PatchListLoader: Don't use deprecated TemporaryBuffer.LocalFile constructor 2015-04-06 22:52:30 +09:00
gerrit-solr Delete a change from the index when it is not in the DB 2014-11-12 17:03:41 +00:00
gerrit-sshd Revert "Revert "SSH: Simplify CachingPublicKeyAuthenticator implementation"" 2015-04-07 19:23:22 +09:00
gerrit-util-cli ReceiveCommits: Add support for approvals 2014-05-08 17:08:44 -07:00
gerrit-util-ssl Remove unused .gitignore 2013-11-28 22:56:51 -08:00
gerrit-war Update version to 2.10.2 2015-03-26 16:38:04 +01:00
lib Revert "Downgrade SSHD to 0.9.0-4-g5967cfd" 2015-04-06 12:26:07 +09:00
plugins Update revision of the replication plugin 2015-04-14 22:34:09 +09:00
ReleaseNotes Release notes for Gerrit 2.10.2 2015-03-26 16:16:38 +01:00
tools Merge branch 'stable-2.9' into stable-2.10 2014-09-05 19:13:31 +09:00
website/releases Exclude gerrit-snapshot-* from releases page 2014-02-19 05:56:00 +00:00
.buckconfig Buck: Share buck cache directory between multiple source trees 2014-06-12 09:58:24 +02:00
.buckversion Update Buck 2014-06-24 20:40:48 +00:00
.gitignore Merge branch 'stable-2.9' 2014-05-27 09:58:38 +09:00
.gitmodules Add singleusergroup plugin 2013-11-09 07:45:00 +01:00
.pydevproject Set python version back to 2.6.5 in .pydevproject 2013-05-20 11:36:08 +09:00
BUCK Update Buck and use gwt_binary() 2014-05-19 11:41:31 -07:00
COPYING Initial project setup of Gerrit 2 2008-11-14 16:59:34 -08:00
INSTALL Remove Gerrit 1.x to 2.x import tools 2009-03-27 20:20:10 -07:00
SUBMITTING_PATCHES Update push URL in SUBMITTING_PATCHES 2012-03-29 00:57:14 -04:00
VERSION Update version to 2.10.2 2015-03-26 16:38:04 +01:00