REMOTE_USER Authenticator (Shibboleth variant): An Authenticator for Jupyterhub to read user information from HTTP request headers, as when running behind an authenticating proxy.
Project description
jhub_shibboleth_user_authenticator
Shibboleth User Authenticator for JupyterHub
This is an implementation of a Shibboleth User Authenticator. The authenticator needs a special proxy (e.g. nginx) which implements the shibboleth authorisation as a service provider, serving the /Shibboleth.sso/* commands and pass all other addresses to the jupyterhub proxy.
This package is the extracting the data from the shibboleth authorisation process and is performing the login process in the jupyterhub.
Shibboleth creates some extra cookies (depending on the configuration), e.g. remote_user . Ususally the remote_user is a complete email address 'username @ domain'. Jupyterhub uses only a username. In some configurations you can get additional cookie entries e.g. the uid which can be used in jupyterhub.
Installation
This package can be installed with pip
either from a local git repository or from PyPi.
Installation from local git repository:
cd jhub_shibboleth_user_authenticator
pip install .
Installation from PyPi:
pip install jhub_shibboelth_user_authenticator
Alternately, you can add the local project folder must be on your PYTHONPATH.
Configuration
Usage with a simple jupyterhub configuration:
# use the shibboleth authentidcator
c.JupyterHub.authenticator_class = 'jhub_shibboleth_user_authenticator.shibboleth_user_auth.ShibbolethUserAuthenticator
# use a different cookie entry as the user name , remote_user is the default!
c.Authenticator.header_name = 'uid'
# put some extra values in the auth_state for the spawner
# don't forget to activate c.Authenticator.enable_auth_state = True
c.Authenticator.auth_state_header_names = ['mail', 'givenname']
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
Built Distribution
File details
Details for the file jhub_shibboleth_user_authenticator-0.1.4.tar.gz
.
File metadata
- Download URL: jhub_shibboleth_user_authenticator-0.1.4.tar.gz
- Upload date:
- Size: 35.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.9.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1d6db909125a990370fc7c13f86e43ecbf4fa5cd85c8384dbb6d91c0ff2d3b80 |
|
MD5 | 4495324501ad1261266a973365f8609a |
|
BLAKE2b-256 | 0bade474baf921cdf98e85a3b6375e861c2572233b524e0059dd4a1e03d53d33 |
File details
Details for the file jhub_shibboleth_user_authenticator-0.1.4-py3-none-any.whl
.
File metadata
- Download URL: jhub_shibboleth_user_authenticator-0.1.4-py3-none-any.whl
- Upload date:
- Size: 16.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.9.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e8053e7470676086263362233011c34a0e2159dc6ca01eebf548e04fdcaa0bec |
|
MD5 | 6bd8d10410949480e1b297545111c0f3 |
|
BLAKE2b-256 | 7266df015181b5a7d6cac8596c1e9e1adf7295021a4e149928aac4c2d3b74e37 |