{"id":"PYSEC-2026-1711","summary":"Globus `identity_provider` restriction ignored when used with `allow_all` in JupyterHub 5.0","details":"### Impact\n\nJupyterHub \u003c 5.0, when used with `GlobusOAuthenticator`, could be configured to allow all users from a particular institution only. The configuration for this would look like:\n\n```python\n# Require users to be using the \"foo.horse\" identity provider, often an institution or university\nc.GlobusAuthenticator.identity_provider = \"foo.horse\"\n# Allow everyone who has that identity provider to log in\nc.GlobusAuthenticator.allow_all = True\n```\n\nThis worked fine prior to JupyterHub 5.0, because `allow_all` *did not* take precedence over `identity_provider`.\n\nSince JupyterHub 5.0, `allow_all` *does* take precedence over `identity_provider`. On a hub with the same config, now **all** users will be allowed to login, regardless of `identity_provider`. `identity_provider` will basically be ignored.\n\nThis is a [documented change](https://jupyterhub.readthedocs.io/en/stable/howto/upgrading-v5.html#authenticator-allow-all-and-allow-existing-users) in JupyterHub 5.0,\nbut is likely to catch many users by surprise.\n\n### Patches\n\nOAuthenticator 16.3.1 fixes the issue with JupyterHub 5.0, and does not affect previous versions.\n\n### Workarounds\n\nDo not upgrade to JupyterHub 5.0 when using `GlobusOAuthenticator` in the prior configuration.","aliases":["CVE-2024-37300","GHSA-gprj-3p75-f996"],"modified":"2026-07-07T17:46:29.847756741Z","published":"2026-07-07T14:34:34.721678Z","references":[{"type":"WEB","url":"https://github.com/jupyterhub/oauthenticator/security/advisories/GHSA-gprj-3p75-f996"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2024-37300"},{"type":"WEB","url":"https://github.com/jupyterhub/oauthenticator/commit/d1aea05fa89f2beae15ab0fa0b0d071030f79654"},{"type":"PACKAGE","url":"https://github.com/jupyterhub/oauthenticator"},{"type":"WEB","url":"https://jupyterhub.readthedocs.io/en/stable/howto/upgrading-v5.html#authenticator-allow-all-and-allow-existing-users"},{"type":"PACKAGE","url":"https://pypi.org/project/oauthenticator"},{"type":"ADVISORY","url":"https://github.com/advisories/GHSA-gprj-3p75-f996"}],"affected":[{"package":{"name":"oauthenticator","ecosystem":"PyPI","purl":"pkg:pypi/oauthenticator"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"16.3.1"}]}],"versions":["0.1.0","0.10.0","0.11.0","0.12.0","0.12.1","0.12.2","0.12.3","0.13.0","0.2.0","0.3.0","0.4.0","0.4.1","0.5.0","0.5.1","0.6.0","0.6.1","0.6.2","0.7.0","0.7.1","0.7.2","0.7.3","0.8.0","0.8.1","0.8.2","0.9.0","14.0.0","14.1.0","14.2.0","15.0.0","15.0.1","15.1.0","16.0.0","16.0.1","16.0.2","16.0.3","16.0.4","16.0.5","16.0.6","16.0.7","16.1.0","16.1.1","16.2.0","16.2.1","16.3.0"],"database_specific":{"source":"https://github.com/pypa/advisory-database/blob/main/vulns/oauthenticator/PYSEC-2026-1711.yaml"}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N"}]}