Django Oauth Toolkit Versions Save

OAuth2 goodies for the Djangonauts!

2.3.0

10 months ago

[2.3.0] 2023-05-31

WARNING

Issues caused by Release 2.0.0 breaking changes continue to be logged. Please make sure to carefully read these release notes before performing a MAJOR upgrade to 2.x.

These issues both result in {"error": "invalid_client"}:

  1. The application client secret is now hashed upon save. You must copy it before it is saved. Using the hashed value will fail.

  2. PKCE_REQUIRED is now True by default. You should use PKCE with your client or set PKCE_REQUIRED=False if you are unable to fix the client.

Added

Changed

  • #1222 Remove expired ID tokens alongside access tokens in cleartokens management command
  • #1267, #1253, #1251, #1250, #1224, #1212, #1211 Various documentation improvements

2.2.0

1 year ago

[2.2.0] 2022-10-18

WARNING

Issues caused by Release 2.0.0 breaking changes continue to be logged. Please make sure to carefully read these release notes before performing a MAJOR upgrade to 2.x.

These issues both result in {"error": "invalid_client"}:

  1. The application client secret is now hashed upon save. You must copy it before it is saved. Using the hashed value will fail.

  2. PKCE_REQUIRED is now True by default. You should use PKCE with your client or set PKCE_REQUIRED=False if you are unable to fix the client.

Added

  • #1208 Add 'code_challenge_method' parameter to authorization call in documentation
  • #1182 Add 'code_verifier' parameter to token requests in documentation

Changed

  • #1203 Support Django 4.1.

Fixed

  • #1203 Remove upper version bound on Django, to allow upgrading to Django 4.1.1 bugfix release.
  • #1210 Handle oauthlib errors on create token requests

2.1.0

1 year ago

WARNING

Issues caused by Release 2.0.0 breaking changes continue to be logged. Please make sure to carefully read these release notes before performing a MAJOR upgrade to 2.x.

These issues both result in {"error": "invalid_client"}:

  1. The application client secret is now hashed upon save. You must copy it before it is saved. Using the hashed value will fail.

  2. PKCE_REQUIRED is now True by default. You should use PKCE with your client or set PKCE_REQUIRED=False if you are unable to fix the client.

Added

  • #1164 Support prompt=login for the OIDC Authorization Code Flow end user Authentication Request.
  • #1163 Add French (fr) translations.
  • #1166 Add Spanish (es) translations.

Changed

  • #1152 createapplication management command enhanced to display an auto-generated secret before it gets hashed.
  • #1172, #1159, #1158 documentation improvements.

Fixed

  • #1147 Fixed 2.0.0 implementation of hashed client secret to work with swapped models.

2.0.0

1 year ago

What's Changed

New Contributors

Full Changelog: https://github.com/jazzband/django-oauth-toolkit/compare/1.7.0...2.0.0

1.7.0

2 years ago

[1.7.0] 2022-01-23

Added

  • #969 Add batching of expired token deletions in cleartokens management command and models.clear_expired() to improve performance for removal of large numers of expired tokens. Configure with CLEAR_EXPIRED_TOKENS_BATCH_SIZE and CLEAR_EXPIRED_TOKENS_BATCH_INTERVAL.
  • #1070 Add a Celery task for clearing expired tokens, e.g. to be scheduled as a periodic task.
  • #1062 Add Brazilian Portuguese (pt-BR) translations.
  • #1069 OIDC: Add an alternate form of get_additional_claims() which makes the list of additional claims_supported available at the OIDC auto-discovery endpoint (.well-known/openid-configuration).

Fixed

  • #1012 Return 200 status code with {"active": false} when introspecting a nonexistent token per RFC 7662. It had been incorrectly returning 401.

1.6.3

2 years ago

[1.6.3] 2022-01-11

Fixed

  • #1085 Fix for #1083 admin UI search for idtoken results in django.core.exceptions.FieldError: Cannot resolve keyword 'token' into field.

Added

  • #1085 Add admin UI search fields for additional models.

1.6.2

2 years ago

[1.6.2] 2022-01-06

NOTE: This release reverts an inadvertently-added breaking change.

Fixed

1.6.1

2 years ago

Changed

  • Note: Only Django 4.0.1+ is supported due to a regression in Django 4.0.0. Explanation

Fixed

  • Miscellaneous 1.6.0 packaging issues.

1.6.0

2 years ago

Added

#949 Provide django.contrib.auth.authenticate() with a request for compatibiity with more backends (like django-axes). #968, #1039 Add support for Django 3.2 and 4.0. #953 Allow loopback redirect URIs using random ports as described in RFC8252 section 7.3. #972 Add Farsi/fa language support. #978 OIDC: Add support for rotating multiple RSA private keys. #978 OIDC: Add new OIDC_JWKS_MAX_AGE_SECONDS to improve jwks_uri caching. #967 OIDC: Add additional claims beyond sub to the id_token. #1041 Add a search field to the Admin UI (e.g. for search for tokens by email address).

Changed

#981 Require redirect_uri if multiple URIs are registered per RFC6749 section 3.1.2.3 #991 Update documentation of REFRESH_TOKEN_EXPIRE_SECONDS to indicate it may be int or datetime.timedelta. #977 Update Tutorial to show required include.

Removed

#968 Remove support for Django 3.0 & 3.1 and Python 3.6 #1035 Removes default_app_config for Django Deprecation Warning #1023 six should be dropped

Fixed

#963 Fix handling invalid hex values in client query strings with a 400 error rather than 500. #973 Tutorial updated to use django-cors-headers. #956 OIDC: Update documentation of get_userinfo_claims to add the missing argument.

1.5.0

3 years ago

Adding support for OPENID