unstale

pypi / authlib

authlib

What changed in authlib 1, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-21.

7 breaking10 security3 new APIs and options2 behavior and defaults11 fixes and other

See which of these apply to your code, ranked, in your agent:

npx @unstale/cli init

@unstale/cli 0.2.1 on npm

authlib 133 changes

Breaking changes 7

  • Rejects empty HMAC keys with a ValueError, preventing anyone from forging HS256, HS384 and HS512 signatures.

    1.9.1release notes

  • Tokens used for the RFC 7592 client configuration endpoint must implement TokenMixin.check_client.

    1.9.1release notes

  • Requires client authentication for ID-JAG grants.

    1.9.0release notes

  • Enforces key, scope, and audience validation.

    1.9.0release notes

  • Enforces nonce and JAR request validation.

    1.9.0release notes

  • Boolean values are rejected for NumericDate claims.

    1.9.0release notes

  • The client uses httpx2 instead of httpx.

    1.8.0release notes

Security 10

  • Rejects registration access tokens issued to another client with an access_denied error, preventing access to another client's registration.

    1.9.1release notes

  • Fixes validation of empty signatures during JWS JSON deserialization.

    1.9.0release notes

  • Authlib OAuth 2.0 has Open Redirect in Authorization API that allows attacker-controlled redirect_uri through unsupported response_type

    1.6.10, 1.7.1security advisory

  • Authlib OIDC Implicit/Hybrid Authorization Vulnerable to Open Redirect

    1.6.12, 1.7.1security advisory

  • Authlib: Cross-site request forging when using cache

    1.6.11security advisory

  • Authlib: Fail-Open Cryptographic Verification in OIDC Hash Binding

    1.6.9security advisory

  • Authlib JWS JWK Header Injection: Signature Verification Bypass

    1.6.9security advisory

  • Authlib Vulnerable to JWE RSA1_5 Bleichenbacher Padding Oracle

    1.6.9security advisory

  • Authlib: Setting alg: none and a blank signature appears to bypass signature verification

    1.6.7security advisory

  • Authlib has 1-click Account Takeover vulnerability

    1.6.6security advisory

New APIs and options 3

  • Adds support for the Identity Assertion JWT Authorization Grant.

    1.9.0release notes

  • Adds a client_id parameter.

    1.8.0release notes

  • Leeway is configurable for JWT bearer token validation.

    1.8.0release notes

Behavior and default changes 2

  • Client metadata is preferred when guessing algorithms.

    1.8.0release notes

  • Adds a default jti claim when signing a JWT bearer assertion.

    1.8.0release notes

Fixes and other changes 11

  • Returns None when id_token is absent, matching the sync client.

    1.9.0release notes

  • Avoids duplicated OAuth 1.0 parameters in signed requests.

    1.9.0release notes

  • Rate-limit responses no longer cause an uncaught JSONDecodeError; they produce a catchable error instead.

    1.9.0release notes

  • Saves the device credential with the authenticated client id.

    1.8.0release notes

  • Fixes handling of binary form data with httpx OAuth1.

    1.8.0release notes

  • Corrects the protocol name in the OAuth1 error description.

    1.8.0release notes

  • The client can be flexible with JWT headers.

    1.8.0release notes

  • Casts the sub claim to a string.

    1.8.0release notes

  • Catches InvalidKeyIdError in the RFC 9068 validator.

    1.8.0release notes

  • Omits claims whose value is None.

    1.8.0release notes

  • Fixes handling of malformed RFC7523 claims.

    1.8.0release notes