Comments (2)
We noticed a similar behaviour in our announcement service which is based jupyterhub-announcement. The main take away is that when we put the GET
method of announcement under authenticated
decorator, these redirect loops happen.
This can be verified from the official service-announcement as well. Simply add web.authenticated
to get method here and running the example as per instructions will show a bunch of redirects in browser console. Server logs show them as well:
[I 2024-04-10 18:44:31.501 JupyterHub _xsrf_utils:125] Setting new xsrf cookie for b'818e4faa1d8443a683ad8e92b98af799:1104f2f2b64e4265b081fadaadfe1099' {'path': '/hub/'}
[I 2024-04-10 18:44:31.502 JupyterHub log:192] 302 GET /hub/login?next=%2Fservices%2Fannouncement%2F -> /services/announcement/ ([email protected]) 1.63ms
[I 2024-04-10 18:44:31.588 JupyterHub _xsrf_utils:125] Setting new xsrf cookie for b'818e4faa1d8443a683ad8e92b98af799:1104f2f2b64e4265b081fadaadfe1099' {'path': '/hub/'}
[I 2024-04-10 18:44:31.588 JupyterHub log:192] 302 GET /hub/login?next=%2Fservices%2Fannouncement%2F -> /services/announcement/ ([email protected]) 1.42ms
[I 2024-04-10 18:44:31.621 JupyterHub _xsrf_utils:125] Setting new xsrf cookie for b'818e4faa1d8443a683ad8e92b98af799:1104f2f2b64e4265b081fadaadfe1099' {'path': '/hub/'}
[I 2024-04-10 18:44:31.621 JupyterHub log:192] 302 GET /hub/login?next=%2Fservices%2Fannouncement%2F -> /services/announcement/ ([email protected]) 1.69ms
[I 2024-04-10 18:44:31.664 JupyterHub _xsrf_utils:125] Setting new xsrf cookie for b'818e4faa1d8443a683ad8e92b98af799:1104f2f2b64e4265b081fadaadfe1099' {'path': '/hub/'}
[I 2024-04-10 18:44:31.665 JupyterHub log:192] 302 GET /hub/login?next=%2Fservices%2Fannouncement%2F -> /services/announcement/ ([email protected]) 5.38ms
[I 2024-04-10 18:44:31.681 JupyterHub _xsrf_utils:125] Setting new xsrf cookie for b'818e4faa1d8443a683ad8e92b98af799:1104f2f2b64e4265b081fadaadfe1099' {'path': '/hub/'}
[I 2024-04-10 18:44:31.682 JupyterHub log:192] 302 GET /hub/login?next=%2Fservices%2Fannouncement%2F -> /services/announcement/ ([email protected]) 2.75ms
[I 2024-04-10 18:44:31.696 JupyterHub _xsrf_utils:125] Setting new xsrf cookie for b'818e4faa1d8443a683ad8e92b98af799:1104f2f2b64e4265b081fadaadfe1099' {'path': '/hub/'}
[I 2024-04-10 18:44:31.697 JupyterHub log:192] 302 GET /hub/login?next=%2Fservices%2Fannouncement%2F -> /services/announcement/ ([email protected]) 3.04ms
[I 2024-04-10 18:44:31.713 JupyterHub _xsrf_utils:125] Setting new xsrf cookie for b'818e4faa1d8443a683ad8e92b98af799:1104f2f2b64e4265b081fadaadfe1099' {'path': '/hub/'}
[I 2024-04-10 18:44:31.714 JupyterHub log:192] 302 GET /hub/login?next=%2Fservices%2Fannouncement%2F -> /services/announcement/ ([email protected]) 2.86ms
[I 2024-04-10 18:44:31.724 JupyterHub _xsrf_utils:125] Setting new xsrf cookie for b'818e4faa1d8443a683ad8e92b98af799:1104f2f2b64e4265b081fadaadfe1099' {'path': '/hub/'}
[I 2024-04-10 18:44:31.724 JupyterHub log:192] 302 GET /hub/login?next=%2Fservices%2Fannouncement%2F -> /services/announcement/ ([email protected]) 1.64ms
[I 2024-04-10 18:44:31.733 JupyterHub _xsrf_utils:125] Setting new xsrf cookie for b'818e4faa1d8443a683ad8e92b98af799:1104f2f2b64e4265b081fadaadfe1099' {'path': '/hub/'}
[I 2024-04-10 18:44:31.733 JupyterHub log:192] 302 GET /hub/login?next=%2Fservices%2Fannouncement%2F -> /services/announcement/ ([email protected]) 1.43ms
[I 2024-04-10 18:44:31.742 JupyterHub _xsrf_utils:125] Setting new xsrf cookie for b'818e4faa1d8443a683ad8e92b98af799:1104f2f2b64e4265b081fadaadfe1099' {'path': '/hub/'}
[I 2024-04-10 18:44:31.743 JupyterHub log:192] 302 GET /hub/login?next=%2Fservices%2Fannouncement%2F -> /services/announcement/ ([email protected]) 1.43ms
from jupyterhub.
I believe the whoami-api link would have stopped working in JupyterHub 2.0. It's not meant to work, as documented in the README for the example (it's api-only). #4797 fixes this to 403 instead of a redirect loop.
from jupyterhub.
Related Issues (20)
- Send POST request to `/hub/spawn/` from a service does not work in 4.1.2 HOT 4
- Cant´t open Notebook in a directory after activating jupyterlab-extention HOT 1
- 4.1.4: Admin access to another user's server results in '403: Forbidden' on the first attempt; works on subsequent attempts HOT 3
- How to Fix CVE-2024-28233 in 1.x HOT 2
- Can't open lab page under nginx reverse proxy (empty page) HOT 2
- api_request to the proxy failed with status code 504 HOT 3
- Support `ServerApp.allow_unauthenticated_access = False`
- Extend the `User` model with fields used by `jupyter-server` identity? HOT 1
- Can we initialise oauth_client when initialise JupyterLab, to support the case that Jupyter Api called when server not yet spawned HOT 3
- add migration documentation to release process HOT 2
- JupyterHub 5.0 HOT 2
- pagination total is not correct with named servers HOT 1
- Feature request: Launch server from CLI HOT 2
- v4.1.5: oauth redirect loop HOT 12
- `ValueError` thrown for external services in 5.0.0b1 (missing required `oauth_redirect_uri`)
- Broken login flow with user subdomains and external proxy on 5.0.0b1 HOT 4
- Migrate from jupyter_telemetry to jupyter_events? HOT 1
- Admin UI glitch - double pressing on "Next" page button causes bugged state HOT 4
- To fail more gracefully when failing to notify jupyterhub of activity HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from jupyterhub.