From 857ee2885fd1ec2eb121fa198e4fd4ed13b05cd4 Mon Sep 17 00:00:00 2001 From: Min RK Date: Tue, 2 Nov 2021 09:50:19 +0100 Subject: [PATCH] jupyterlab: don't use $JUPYTERHUB_API_TOKEN in PageConfig.token --- jupyterhub/singleuser/mixins.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/jupyterhub/singleuser/mixins.py b/jupyterhub/singleuser/mixins.py index 8785f135..0b3b2207 100755 --- a/jupyterhub/singleuser/mixins.py +++ b/jupyterhub/singleuser/mixins.py @@ -715,6 +715,18 @@ class SingleUserNotebookAppMixin(Configurable): orig_loader = env.loader env.loader = ChoiceLoader([FunctionLoader(get_page), orig_loader]) + def load_server_extensions(self): + # Loading LabApp sets $JUPYTERHUB_API_TOKEN on load, which is incorrect + r = super().load_server_extensions() + # clear the token in PageConfig at this step + # so that cookie auth is used + # FIXME: in the future, + # it would probably make sense to set page_config.token to the token + # from the current request. + if 'page_config_data' in self.web_app.settings: + self.web_app.settings['page_config_data']['token'] = '' + return r + def detect_base_package(App): """Detect the base package for an App class