Question: does Magpie have a mechanism to act as external sign provider to other? #174
Labels
investigate
Issue or new component that needs further exploration
question
security
New security features or failing AuthN/AuthZ conditions
So I am looking for a way to have "single sign-on and access control" between all the services of PAVICS and JupyterHub. Magpie is currently responsible for that single sign-on and access control part. The access control part is important too because for some Jupyter users we might want to limit their access to some datasets on Thredds for example.
So if we need to add JupyterHub to the mix, JupyterHub must integrate with Magpie.
So if my assumptions above are correct, for JupyterHub to integrate with Magpie to provide a single sign-on user experience, we have the following options:
both Magpie and JupyterHub uses the same external signin provider so the single sign-on user experience is achieved because the user is only required to login once to that external signin provider. Magpie then only provide the access control feature, the authentication being handled by the external signin provider.
JupyterHub somehow can "see and use" the authorization token from Magpie (Magpie acting as external signin provider to JupyterHub) so the single sign-on user experience is achieved because the user is only required to login once to Magpie as an internal user to Magpie (not using external signin provider with Magpie). Magpie in this scenario provide both authentication and access control.
As seen in #171 and #172 option 1 is not working great so far.
As a backup plan I would like to explore option 2. From the list of all the possible authenticators for JupyterHub here https://github.com/jupyterhub/jupyterhub/wiki/Authenticators the following subset looks interesting, could anyone of them work with Magpie?
JSONWebToken Authenticator (For Authenticating/Authorising users based on a JSONWebToken forwarded in an
Authorization: bearer <token>
header.)REMOTE_USER Authenticator (For when intermediate login infrastructure such as Apache offloads authentication and forwards REMOTE_USER header.)
CASAuthenticator for CAS Single Sign-on SSO
The text was updated successfully, but these errors were encountered: