Authlib 1.9.4__tar.gz → 1.9.5__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {authlib-1.9.4 → authlib-1.9.5}/Authlib.egg-info/PKG-INFO +1 -1
- {authlib-1.9.4 → authlib-1.9.5}/PKG-INFO +1 -1
- {authlib-1.9.4 → authlib-1.9.5}/authlib/consts.py +1 -1
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/rfc7518/oct_key.py +21 -0
- {authlib-1.9.4 → authlib-1.9.5}/Authlib.egg-info/SOURCES.txt +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/Authlib.egg-info/dependency_links.txt +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/Authlib.egg-info/requires.txt +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/Authlib.egg-info/top_level.txt +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/LICENSE +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/MANIFEST.in +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/README.md +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/_joserfc_helpers.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/common/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/common/encoding.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/common/errors.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/common/language.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/common/security.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/common/urls.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/deprecate.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/base_client/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/base_client/async_app.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/base_client/async_openid.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/base_client/errors.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/base_client/framework_integration.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/base_client/registry.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/base_client/sync_app.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/base_client/sync_openid.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/django_client/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/django_client/apps.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/django_client/integration.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/django_oauth1/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/django_oauth1/authorization_server.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/django_oauth1/nonce.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/django_oauth1/resource_protector.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/django_oauth2/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/django_oauth2/authorization_server.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/django_oauth2/endpoints.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/django_oauth2/requests.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/django_oauth2/resource_protector.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/django_oauth2/signals.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/flask_client/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/flask_client/apps.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/flask_client/integration.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/flask_oauth1/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/flask_oauth1/authorization_server.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/flask_oauth1/cache.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/flask_oauth1/resource_protector.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/flask_oauth2/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/flask_oauth2/authorization_server.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/flask_oauth2/errors.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/flask_oauth2/requests.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/flask_oauth2/resource_protector.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/flask_oauth2/signals.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/httpx_client/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/httpx_client/_compat.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/httpx_client/assertion_client.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/httpx_client/oauth1_client.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/httpx_client/oauth2_client.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/httpx_client/utils.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/requests_client/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/requests_client/assertion_session.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/requests_client/oauth1_session.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/requests_client/oauth2_session.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/requests_client/utils.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/sqla_oauth2/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/sqla_oauth2/client_mixin.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/sqla_oauth2/functions.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/sqla_oauth2/tokens_mixins.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/starlette_client/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/starlette_client/apps.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/integrations/starlette_client/integration.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/drafts/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/drafts/_jwe_algorithms.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/drafts/_jwe_enc_cryptodome.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/drafts/_jwe_enc_cryptography.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/errors.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/jwk.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/rfc7515/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/rfc7515/jws.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/rfc7515/models.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/rfc7516/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/rfc7516/jwe.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/rfc7516/models.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/rfc7517/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/rfc7517/_cryptography_key.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/rfc7517/asymmetric_key.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/rfc7517/base_key.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/rfc7517/jwk.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/rfc7517/key_set.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/rfc7518/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/rfc7518/ec_key.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/rfc7518/jwe_algs.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/rfc7518/jwe_encs.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/rfc7518/jwe_zips.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/rfc7518/jws_algs.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/rfc7518/rsa_key.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/rfc7518/util.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/rfc7519/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/rfc7519/claims.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/rfc7519/jwt.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/rfc8037/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/rfc8037/jws_eddsa.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/rfc8037/okp_key.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/jose/util.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth1/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth1/client.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth1/errors.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth1/rfc5849/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth1/rfc5849/authorization_server.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth1/rfc5849/base_server.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth1/rfc5849/client_auth.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth1/rfc5849/errors.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth1/rfc5849/models.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth1/rfc5849/parameters.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth1/rfc5849/resource_protector.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth1/rfc5849/rsa.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth1/rfc5849/signature.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth1/rfc5849/util.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth1/rfc5849/wrapper.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/auth.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/base.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/claims.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/client.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/drafts/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/drafts/id_jag.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc6749/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc6749/authenticate_client.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc6749/authorization_server.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc6749/endpoint.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc6749/errors.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc6749/grants/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc6749/grants/authorization_code.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc6749/grants/base.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc6749/grants/client_credentials.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc6749/grants/implicit.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc6749/grants/refresh_token.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc6749/grants/resource_owner_password_credentials.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc6749/hooks.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc6749/models.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc6749/parameters.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc6749/requests.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc6749/resource_protector.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc6749/token_endpoint.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc6749/util.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc6749/wrappers.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc6750/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc6750/errors.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc6750/parameters.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc6750/token.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc6750/validator.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc7009/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc7009/parameters.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc7009/revocation.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc7521/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc7521/client.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc7523/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc7523/assertion.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc7523/auth.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc7523/client.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc7523/jwt_bearer.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc7523/token.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc7523/validator.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc7591/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc7591/claims.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc7591/endpoint.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc7591/errors.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc7592/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc7592/endpoint.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc7636/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc7636/challenge.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc7662/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc7662/introspection.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc7662/models.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc7662/token_validator.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc8414/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc8414/models.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc8414/well_known.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc8628/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc8628/device_code.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc8628/endpoint.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc8628/errors.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc8628/models.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc8693/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc9068/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc9068/claims.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc9068/introspection.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc9068/revocation.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc9068/token.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc9068/token_validator.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc9101/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc9101/authorization_server.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc9101/discovery.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc9101/errors.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc9101/registration.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc9207/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc9207/discovery.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc9207/parameter.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oidc/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oidc/core/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oidc/core/authorization_request.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oidc/core/claims.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oidc/core/errors.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oidc/core/grants/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oidc/core/grants/_legacy.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oidc/core/grants/code.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oidc/core/grants/hybrid.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oidc/core/grants/implicit.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oidc/core/grants/util.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oidc/core/models.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oidc/core/userinfo.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oidc/core/util.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oidc/discovery/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oidc/discovery/models.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oidc/discovery/well_known.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oidc/registration/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oidc/registration/claims.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oidc/rpinitiated/__init__.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oidc/rpinitiated/discovery.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oidc/rpinitiated/end_session.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/authlib/oidc/rpinitiated/registration.py +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/pyproject.toml +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/setup.cfg +0 -0
- {authlib-1.9.4 → authlib-1.9.5}/setup.py +0 -0
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import secrets
|
|
2
2
|
|
|
3
|
+
from cryptography.exceptions import UnsupportedAlgorithm
|
|
4
|
+
from cryptography.hazmat.primitives.serialization import load_ssh_public_key
|
|
5
|
+
|
|
3
6
|
from authlib.common.encoding import to_bytes
|
|
4
7
|
from authlib.common.encoding import to_unicode
|
|
5
8
|
from authlib.common.encoding import urlsafe_b64decode
|
|
@@ -16,6 +19,21 @@ POSSIBLE_UNSAFE_KEYS = (
|
|
|
16
19
|
b"ecdsa-sha2-",
|
|
17
20
|
)
|
|
18
21
|
|
|
22
|
+
_SSH_PUBLIC_PREFIXES = (b"ssh-rsa", b"ssh-ed25519", b"ecdsa-sha2-")
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
def _is_ssh_public_key(raw_key):
|
|
26
|
+
"""Tell if the asymmetric key classes would load the bytes as an SSH key."""
|
|
27
|
+
if not raw_key.startswith(_SSH_PUBLIC_PREFIXES):
|
|
28
|
+
return False
|
|
29
|
+
|
|
30
|
+
try:
|
|
31
|
+
load_ssh_public_key(raw_key)
|
|
32
|
+
except (ValueError, UnsupportedAlgorithm):
|
|
33
|
+
return False
|
|
34
|
+
|
|
35
|
+
return True
|
|
36
|
+
|
|
19
37
|
|
|
20
38
|
class OctKey(Key):
|
|
21
39
|
"""Key class of the ``oct`` key type."""
|
|
@@ -73,6 +91,9 @@ class OctKey(Key):
|
|
|
73
91
|
if any(marker in raw_key for marker in POSSIBLE_UNSAFE_KEYS):
|
|
74
92
|
raise ValueError("This key may not be safe to import")
|
|
75
93
|
|
|
94
|
+
if _is_ssh_public_key(raw_key):
|
|
95
|
+
raise ValueError("This key may not be safe to import")
|
|
96
|
+
|
|
76
97
|
@classmethod
|
|
77
98
|
def import_key(cls, raw, options=None):
|
|
78
99
|
"""Import a key from bytes, string, or dict data."""
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{authlib-1.9.4 → authlib-1.9.5}/authlib/oauth2/rfc6749/grants/resource_owner_password_credentials.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|