-
Notifications
You must be signed in to change notification settings - Fork 304
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[WIP] Multi User server with session management #391
Conversation
Following up the Jupyter Server Weekly Dev Meeting :
|
Thx a lot @pierrotsmnrd for the participation to today meeting which I was not able to attend. I am adding @blink1073 to this PR. I guess this is a pretty important move we have discussed some time ago in #122 and I hope we can get back on this next week during next meeting. Authorization model is key this is why the work @Zsailer has done in #165 could be used in conjunction to this proposal to make Jupyter Server more "auth". |
The single user notebook server has a base class for handlers that be be overridden to provide customer authenticators and session management. JupyterHub is doing this for its variant of the single user notebook server here: https://github.com/jupyterhub/jupyterhub/blob/master/jupyterhub/singleuser/mixins.py#L676 Currently this is a bit monkey-patchy as it requires overriding base classes for the handlers with mixins. If we want to add auth/sessions/identify to the single user server I believe we should do so in a way that Jupyterhub can also use and leverage to simplify this logic and make it less monkey-patchy. I don't think the jupyter-server needs to be able to reuse all of the JupyterHub authenticators, just that we build it in a manner that addresses JupyterHub's usage cases as well. @echarles can you comment on how the proposal in this PR helps or interferes with this direction? |
Codecov Report
@@ Coverage Diff @@
## master #391 +/- ##
==========================================
- Coverage 77.04% 75.23% -1.81%
==========================================
Files 109 115 +6
Lines 9945 10068 +123
Branches 1078 1100 +22
==========================================
- Hits 7662 7575 -87
- Misses 1907 2114 +207
- Partials 376 379 +3
Continue to review full report at Codecov.
|
Referring @Zsailer on #165 (comment) who has waited 2 years to see the Authorization feature merged, I still have hope in this one 1 year later :) In this multi-user case, the additional issue I think is that the use-case/usage/need for this is not well understood, prolly also not well surfaced/explained.
@ellisonbg I can comment a lot in the thread, but I think a conversation during e.g. the server community meeting would allow easier interactions. There are ramifications in the work being done by @minrk in #671 and in the whole RTC stories. |
Fixes #122
This is WIP and aims to provide foundation session management for a multiuser jupyter server.
This would allow to build applications with authentication like the following example in the screencast.