usso 0.28.28__tar.gz → 0.28.30__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.
- {usso-0.28.28/src/usso.egg-info → usso-0.28.30}/PKG-INFO +1 -1
- {usso-0.28.28 → usso-0.28.30}/pyproject.toml +1 -1
- {usso-0.28.28 → usso-0.28.30}/src/usso/client.py +13 -9
- {usso-0.28.28 → usso-0.28.30/src/usso.egg-info}/PKG-INFO +1 -1
- {usso-0.28.28 → usso-0.28.30}/LICENSE.txt +0 -0
- {usso-0.28.28 → usso-0.28.30}/MANIFEST.in +0 -0
- {usso-0.28.28 → usso-0.28.30}/README.md +0 -0
- {usso-0.28.28 → usso-0.28.30}/pytest.ini +0 -0
- {usso-0.28.28 → usso-0.28.30}/setup.cfg +0 -0
- {usso-0.28.28 → usso-0.28.30}/src/usso/__init__.py +0 -0
- {usso-0.28.28 → usso-0.28.30}/src/usso/api_key.py +0 -0
- {usso-0.28.28 → usso-0.28.30}/src/usso/authorization.py +0 -0
- {usso-0.28.28 → usso-0.28.30}/src/usso/config.py +0 -0
- {usso-0.28.28 → usso-0.28.30}/src/usso/exceptions.py +0 -0
- {usso-0.28.28 → usso-0.28.30}/src/usso/integrations/django/__init__.py +0 -0
- {usso-0.28.28 → usso-0.28.30}/src/usso/integrations/django/middleware.py +0 -0
- {usso-0.28.28 → usso-0.28.30}/src/usso/integrations/fastapi/__init__.py +0 -0
- {usso-0.28.28 → usso-0.28.30}/src/usso/integrations/fastapi/dependency.py +0 -0
- {usso-0.28.28 → usso-0.28.30}/src/usso/integrations/fastapi/handler.py +0 -0
- {usso-0.28.28 → usso-0.28.30}/src/usso/session/__init__.py +0 -0
- {usso-0.28.28 → usso-0.28.30}/src/usso/session/async_session.py +0 -0
- {usso-0.28.28 → usso-0.28.30}/src/usso/session/base_session.py +0 -0
- {usso-0.28.28 → usso-0.28.30}/src/usso/session/session.py +0 -0
- {usso-0.28.28 → usso-0.28.30}/src/usso/user.py +0 -0
- {usso-0.28.28 → usso-0.28.30}/src/usso/utils/__init__.py +0 -0
- {usso-0.28.28 → usso-0.28.30}/src/usso/utils/string_utils.py +0 -0
- {usso-0.28.28 → usso-0.28.30}/src/usso.egg-info/SOURCES.txt +0 -0
- {usso-0.28.28 → usso-0.28.30}/src/usso.egg-info/dependency_links.txt +0 -0
- {usso-0.28.28 → usso-0.28.30}/src/usso.egg-info/entry_points.txt +0 -0
- {usso-0.28.28 → usso-0.28.30}/src/usso.egg-info/requires.txt +0 -0
- {usso-0.28.28 → usso-0.28.30}/src/usso.egg-info/top_level.txt +0 -0
- {usso-0.28.28 → usso-0.28.30}/tests/test_authorization.py +0 -0
- {usso-0.28.28 → usso-0.28.30}/tests/test_fastapi.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: usso
|
3
|
-
Version: 0.28.
|
3
|
+
Version: 0.28.30
|
4
4
|
Summary: A plug-and-play client for integrating universal single sign-on (SSO) with Python frameworks, enabling secure and seamless authentication across microservices.
|
5
5
|
Author-email: Mahdi Kiani <mahdikiany@gmail.com>
|
6
6
|
Maintainer-email: Mahdi Kiani <mahdikiany@gmail.com>
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
4
4
|
|
5
5
|
[project]
|
6
6
|
name = "usso"
|
7
|
-
version = "0.28.
|
7
|
+
version = "0.28.30"
|
8
8
|
description = "A plug-and-play client for integrating universal single sign-on (SSO) with Python frameworks, enabling secure and seamless authentication across microservices."
|
9
9
|
readme = "README.md"
|
10
10
|
requires-python = ">=3.9"
|
@@ -59,11 +59,21 @@ class UssoAuth:
|
|
59
59
|
USSOException: If token is invalid and raise_exception is True
|
60
60
|
"""
|
61
61
|
exp = None
|
62
|
-
|
62
|
+
|
63
|
+
if self.from_base_usso_url:
|
63
64
|
try:
|
64
65
|
jwt_obj = usso_jwt.schemas.JWT(
|
65
|
-
token=token,
|
66
|
+
token=token,
|
67
|
+
config=self.jwt_configs[0],
|
68
|
+
payload_class=UserData,
|
69
|
+
)
|
70
|
+
iss = jwt_obj.unverified_payload.iss
|
71
|
+
iss_domain = urlparse(iss).netloc
|
72
|
+
jwks_url = (
|
73
|
+
f"{self.from_base_usso_url}/.well-known/jwks.json?"
|
74
|
+
f"domain={iss_domain}"
|
66
75
|
)
|
76
|
+
jwt_obj.config.jwks_url = jwks_url
|
67
77
|
if jwt_obj.verify(
|
68
78
|
expected_token_type=expected_token_type,
|
69
79
|
**kwargs,
|
@@ -72,17 +82,11 @@ class UssoAuth:
|
|
72
82
|
except usso_jwt.exceptions.JWTError as e:
|
73
83
|
exp = e
|
74
84
|
|
75
|
-
|
85
|
+
for jwk_config in self.jwt_configs:
|
76
86
|
try:
|
77
87
|
jwt_obj = usso_jwt.schemas.JWT(
|
78
88
|
token=token, config=jwk_config, payload_class=UserData
|
79
89
|
)
|
80
|
-
iss = jwt_obj.unverified_payload.iss
|
81
|
-
iss_domain = urlparse(iss).netloc
|
82
|
-
jwt_obj.config.jwks_url = (
|
83
|
-
f"{self.from_base_usso_url}/.well-known/jwks.json?"
|
84
|
-
f"domain={iss_domain}"
|
85
|
-
)
|
86
90
|
if jwt_obj.verify(
|
87
91
|
expected_token_type=expected_token_type,
|
88
92
|
**kwargs,
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: usso
|
3
|
-
Version: 0.28.
|
3
|
+
Version: 0.28.30
|
4
4
|
Summary: A plug-and-play client for integrating universal single sign-on (SSO) with Python frameworks, enabling secure and seamless authentication across microservices.
|
5
5
|
Author-email: Mahdi Kiani <mahdikiany@gmail.com>
|
6
6
|
Maintainer-email: Mahdi Kiani <mahdikiany@gmail.com>
|
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
|