Make preferred_username optional for Keycloak

This commit adds a new config option 'use-preferred-username' which
can be used with the Keycloak provider to make it optional to use
the preferred_username delivered by Keycloak.

This is useful in situations where the preferred_username is set
as an email address, which don't work as a gerrit username.

Leaving the username unset also allows the user to choose their
own username.

Change-Id: Iff114537527c672190c6a1a41726d2c32bb97810
3 files changed
tree: 4f71fd10c77824b2db20d80795eca47089e83681
  1. .settings/
  2. src/
  3. tools/
  4. .bazelignore
  5. .bazelrc
  6. .bazelversion
  7. .gitignore
  8. .travis.yml
  9. bazlets.bzl
  10. BUILD
  11. external_plugin_deps.bzl
  12. LICENSE
  13. LICENSE-scribe
  14. README.md
  15. WORKSPACE
README.md

Gerrit OAuth2 authentication provider

Build Status

With this plugin Gerrit can use OAuth2 protocol for authentication. Supported OAuth providers:

See the Wiki what it can do for you.

Prebuilt artifacts

Prebuilt binary artifacts are available on release page. Make sure to pick the right JAR for your Gerrit version.

Build

To build the plugin with Bazel, install Bazel and run the following:

  git clone https://gerrit.googlesource.com/plugins/oauth
  cd oauth && bazel build oauth

Install

Copy the bazel-bin/oauth.jar to $gerrit_site/plugins and re-run init to configure it:

  java -jar gerrit.war init -d <site>
  [...]
  *** OAuth Authentication Provider
  ***
  Use Bitbucket OAuth provider for Gerrit login ? [Y/n]? n
  Use Google OAuth provider for Gerrit login ? [Y/n]?
  Application client id          : <client-id>
  Application client secret      : 
                confirm password : 
  Link to OpenID accounts? [true]: 
  Use GitHub OAuth provider for Gerrit login ? [Y/n]? n

Reporting bugs

Make sure to read the FAQ before reporting issues.

License

Apache License 2.0