Skip to main content

OAuthenticator: Authenticate JupyterHub users with common OAuth providers

Project description

OAuth + JupyterHub Authenticator = OAuthenticator :heart:

Documentation build status GitHub Workflow Status Latest PyPI version Latest conda-forge version GitHub Discourse Gitter

OAuth is a token based login mechanism that doesn't rely on a username and password mapping. In order to use this login mechanism with JupyerHub the login handlers need to be overridden. OAuthenticator overrides these handlers for the common OAuth2 identity providers allowing them to be plugged in and used with JupyterHub.

The following authentication services are supported through their own authenticator: Auth0, Azure AD, Bitbucket, CILogon, FeiShu, GitHub, GitLab, Globus, Google, MediaWiki, Okpy, OpenShift.

There is also a GenericAuthenticator that can be configured with any OAuth 2.0 identity provider or can be used to create a new authenticator class when additional customization is needed.


The installation guide can be found in the docs.

The docs also provide example setups for different OAuth2 identity providers:

Running tests

To run the tests locally:

$ pip install --upgrade --pre -r test-requirements.txt
$ pytest -v ./oauthenticator/tests/

Or you run a specific test file with:

$ pytest -v ./oauthenticator/tests/<test-file-name>

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

oauthenticator-15.1.0.tar.gz (49.5 kB view hashes)

Uploaded source

Built Distribution

oauthenticator-15.1.0-py3-none-any.whl (66.2 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page