Skip to content

Releases: lepture/authlib

Version 1.0.0

15 Mar 10:18
c73e2a8
Compare
Choose a tag to compare

We have dropped support for Python 2 in this release. We have removed
built-in SQLAlchemy integration.

OAuth Client Changes:

The whole framework client integrations have been restructured, if you are
using the client properly, e.g. oauth.register(...), it would work as
before.

OAuth Provider Changes:

In Flask OAuth 2.0 provider, we have removed the deprecated
OAUTH2_JWT_XXX configuration, instead, developers should define
.get_jwt_config on OpenID extensions and grant types.

SQLAlchemy integrations has been removed from Authlib. Developers
should define the database by themselves.

JOSE Changes

  • JWS has been renamed to JsonWebSignature
  • JWE has been renamed to JsonWebEncryption
  • JWK has been renamed to JsonWebKey
  • JWT has been renamed to JsonWebToken

The "Key" model has been re-designed, checkout the JSON Web Key for updates.

Added ES256K algorithm for JWS and JWT.

Breaking Changes: find how to solve the deprecate issues via https://git.io/JkY4f

Version 0.15.5

18 Oct 12:16
d8e428c
Compare
Choose a tag to compare
  • Make Authlib compatible with latest httpx
  • Make Authlib compatible with latest werkzeug
  • Allow customize RFC7523 alg value

Version 0.15.4

17 Jul 03:08
4570144
Compare
Choose a tag to compare

Security fix when JWT claims is None.

For example, JWT payload has iss=None:

{
  "iss": None,
  ...
}

But we need to decode it with claims:

claims_options = {
  'iss': {'essential': True, 'values': ['required']}
}
jwt.decode(token, key, claims_options=claims_options)

It didn't raise an error before this fix.

Version 0.15.3

15 Jan 13:59
33aab02
Compare
Choose a tag to compare

Fixed .authorize_access_token for OAuth 1.0 services, via #308

Version 0.15.2

18 Oct 06:49
1969b56
Compare
Choose a tag to compare

Fixed httpx authentication bug via #283

Version 0.15.1

14 Oct 12:58
c70a805
Compare
Choose a tag to compare

Backward compitable fix for using JWKs in JWT, via #280.

Version 0.15

10 Oct 07:49
4e501ce
Compare
Choose a tag to compare

This is the last release before v1.0. In this release, we added more RFCs
implementations and did some refactors for JOSE:

  • RFC8037: CFRG Elliptic Curve Diffie-Hellman (ECDH) and Signatures in JSON Object Signing and Encryption (JOSE)
  • RFC7638: JSON Web Key (JWK) Thumbprint

We also fixed bugs for integrations:

  • Fixed support for HTTPX>=0.14.3
  • Added OAuth clients of HTTPX back via #270
  • Fixed parallel token refreshes for HTTPX async OAuth 2 client
  • Raise OAuthError when callback contains errors via #275

Breaking Change:

  1. The parameter algorithms in JsonWebSignature and JsonWebEncryption
    are changed. Usually you don't have to care about it since you won't use it directly.
  2. Whole JSON Web Key is refactored, please check JSON Web Key (JWK)

Version 0.14.3

18 May 14:01
ffdc437
Compare
Choose a tag to compare
  • Fix HTTPX integration via #232 and #233.
  • Add "bearer" as default token type for OAuth 2 Client.
  • JWS and JWE don't validate private headers by default.
  • Remove none auth method for authorization code by default.
  • Allow usage of user provided code_verifier via #216.
  • Add introspect_token method on OAuth 2 Client via #224.

Version 0.14.2

06 May 00:57
ce8b46b
Compare
Choose a tag to compare
  • Fix OAuth 1.0 client for starlette.
  • Allow leeway option in client parse ID token via #228.
  • Fix OAuthToken when expires_at or expires_in is 0 via #227.
  • Fix auto refresh token logic.
  • Load server metadata before request.

Version 0.14.1

06 May 00:56
8e8786b
Compare
Choose a tag to compare
  • Quick fix for legacy imports of Flask and Django clients