Skip to content

Drops deprecated authlib for joserfc: native algorithm allowlist, enforced claims, uv-based packaging. Python 3.10+. - #77

Merged
zyrinx merged 7 commits into
masterfrom
drf-oidc-auth
Oct 8, 2026
Merged

zyrinx merged 7 commits into
masterfrom
drf-oidc-auth

Conversation

@zyrinx

@zyrinx zyrinx commented Oct 5, 2026 •

Copy link
Copy Markdown
Collaborator

Drops deprecated authlib for joserfc: native algorithm allowlist, enforced claims, uv-based packaging with auto-publish on release. Python 3.10+.

  • Security: JWT verification now only accepts tokens whose alg is in the new JWT_ALGORITHMS setting (default RS256), unsigned and malformed tokens are rejected before any network call or key lookup, with a 401 instead of a 500.
  • Claims: exp, iat, iss and aud are enforced explicitly through joserfc's claims registry, independent of authlib version-specific leeway semantics that previously could disable expiration checks.
  • Dependencies: authlib removed, joserfc added (the maintained successor, 0 known vulnerabilities).
  • Packaging/CI: pyproject.toml + uv.lock, test matrix on Python 3.10–3.11

Consumers using non-RS256 tokens must set JWT_ALGORITHMS.
Python 3.7–3.9 dropped

Patrick van der Wal added 5 commits October 5, 2026 08:01
 - JWT verification now runs on joserfc with a native algorithm allowlist (JWT_ALGORITHMS setting, default RS256)
 - exp/iat/iss/aud claim validation is enforced explicitly
 - packaging moved to pyproject.toml + uv.lock
 - requires-python >= 3.10; malformed tokens return 401 instead of 500
@zyrinx zyrinx changed the title Drf OIDC auth Drops deprecated authlib for joserfc: native algorithm allowlist, enforced claims, uv-based packaging. Python 3.10+. Oct 5, 2026
Comment thread .github/workflows/python-publish.yml Outdated
Comment thread .github/workflows/test.yaml Outdated
@zyrinx
zyrinx merged commit 63089ee into master Oct 8, 2026
2 checks passed
@tdgroot
tdgroot deleted the drf-oidc-auth branch October 8, 2026 15:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

4 participants