Skip to main content

Authenticator multiplexer for JupyterHub

Project description

JupyterHub OAuthenticator + LDAPAuthenticator ++... = MultiAuthenticator ❤️

The MultiAuthenticator is multiplexer authenticator class that allows to use more than one authentication option with JupyterHub.

Installation

$ pip install git+https://github.com/idiap/multiauthenticator
$ pip install jupyter-multiauthenticator

Configuration

The MultiAuthenticator class only has one configuration point: authenticators.

This property shall contain a list of tuple with the following content:

  • Authenticator class (i.e. GitLabAuthenticator, LDAPAuthenticator)
  • The URL scope (i.e. /gitlab, /ldap)
  • A dictionary with the authenticator's configuration

As an example:

from jupyterhub.auth import PAMAuthenticator

class MyPamAutenticator(PAMAuthenticator):
    login_service = "PAM"

c.MultiAuthenticator.authenticators = [
    {
        "authenticator_class": 'github',
        "url_prefix": '/github',
        "config": {
            'client_id': 'XXXX',
            'client_secret': 'YYYY',
            'oauth_callback_url': 'https://jupyterhub.example.com/hub/github/oauth_callback'
        }
    },
    {
        "authenticator_class": 'google',
        "url_prefix": '/google',
        "config": {
            'client_id': 'xxxx',
            'client_secret': 'yyyy',
            'oauth_callback_url': 'https://jupyterhub.example.com/hub/google/oauth_callback'
        }
    },
    {
        "authenticator_class": 'gitlab',
        "url_prefix": '/gitlab',
        "config": {
            'client_id': 'ZZZZ',
            'client_secret': 'AAAA',
            'oauth_callback_url': 'https://jupyterhub.example.com/hub/gitlab/oauth_callback'
            "gitlab_url": "https://gitlab.example.com"
        }
    },
    {
        "authenticator_class": MyPamAuthenticator,
        "url_prefix": "/pam",
    },
]

c.JupyterHub.authenticator_class = 'multiauthenticator'

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

jupyterhub_multiauthenticator-0.4.0.tar.gz (5.7 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file jupyterhub_multiauthenticator-0.4.0.tar.gz.

File metadata

File hashes

Hashes for jupyterhub_multiauthenticator-0.4.0.tar.gz
Algorithm Hash digest
SHA256 56f44742cef11f2bc82c688d48de3917a2ef04a73ec2f720a5a48ed23db4085c
MD5 dad5057ed34398753bb80510f1df887e
BLAKE2b-256 acd8fff3e1bd023dee0a7a5bd2849bb577741d4349410c9a986e4b35fd0d3ca2

See more details on using hashes here.

File details

Details for the file jupyterhub_multiauthenticator-0.4.0-py3-none-any.whl.

File metadata

File hashes

Hashes for jupyterhub_multiauthenticator-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 363a94081bbaaf8035dd9a57c82f7da65ce8fa0d3dd1ce69886777b78fd04946
MD5 b8307d489db4af7a11b943af43ef3273
BLAKE2b-256 d6406f001657520f99c37a1703fab95dcb3eee3b69da2672fdd830a6ec23937d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page