usso 0.28.28__tar.gz → 0.28.29__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.
Files changed (33) hide show
  1. {usso-0.28.28/src/usso.egg-info → usso-0.28.29}/PKG-INFO +1 -1
  2. {usso-0.28.28 → usso-0.28.29}/pyproject.toml +1 -1
  3. {usso-0.28.28 → usso-0.28.29}/src/usso/client.py +12 -9
  4. {usso-0.28.28 → usso-0.28.29/src/usso.egg-info}/PKG-INFO +1 -1
  5. {usso-0.28.28 → usso-0.28.29}/LICENSE.txt +0 -0
  6. {usso-0.28.28 → usso-0.28.29}/MANIFEST.in +0 -0
  7. {usso-0.28.28 → usso-0.28.29}/README.md +0 -0
  8. {usso-0.28.28 → usso-0.28.29}/pytest.ini +0 -0
  9. {usso-0.28.28 → usso-0.28.29}/setup.cfg +0 -0
  10. {usso-0.28.28 → usso-0.28.29}/src/usso/__init__.py +0 -0
  11. {usso-0.28.28 → usso-0.28.29}/src/usso/api_key.py +0 -0
  12. {usso-0.28.28 → usso-0.28.29}/src/usso/authorization.py +0 -0
  13. {usso-0.28.28 → usso-0.28.29}/src/usso/config.py +0 -0
  14. {usso-0.28.28 → usso-0.28.29}/src/usso/exceptions.py +0 -0
  15. {usso-0.28.28 → usso-0.28.29}/src/usso/integrations/django/__init__.py +0 -0
  16. {usso-0.28.28 → usso-0.28.29}/src/usso/integrations/django/middleware.py +0 -0
  17. {usso-0.28.28 → usso-0.28.29}/src/usso/integrations/fastapi/__init__.py +0 -0
  18. {usso-0.28.28 → usso-0.28.29}/src/usso/integrations/fastapi/dependency.py +0 -0
  19. {usso-0.28.28 → usso-0.28.29}/src/usso/integrations/fastapi/handler.py +0 -0
  20. {usso-0.28.28 → usso-0.28.29}/src/usso/session/__init__.py +0 -0
  21. {usso-0.28.28 → usso-0.28.29}/src/usso/session/async_session.py +0 -0
  22. {usso-0.28.28 → usso-0.28.29}/src/usso/session/base_session.py +0 -0
  23. {usso-0.28.28 → usso-0.28.29}/src/usso/session/session.py +0 -0
  24. {usso-0.28.28 → usso-0.28.29}/src/usso/user.py +0 -0
  25. {usso-0.28.28 → usso-0.28.29}/src/usso/utils/__init__.py +0 -0
  26. {usso-0.28.28 → usso-0.28.29}/src/usso/utils/string_utils.py +0 -0
  27. {usso-0.28.28 → usso-0.28.29}/src/usso.egg-info/SOURCES.txt +0 -0
  28. {usso-0.28.28 → usso-0.28.29}/src/usso.egg-info/dependency_links.txt +0 -0
  29. {usso-0.28.28 → usso-0.28.29}/src/usso.egg-info/entry_points.txt +0 -0
  30. {usso-0.28.28 → usso-0.28.29}/src/usso.egg-info/requires.txt +0 -0
  31. {usso-0.28.28 → usso-0.28.29}/src/usso.egg-info/top_level.txt +0 -0
  32. {usso-0.28.28 → usso-0.28.29}/tests/test_authorization.py +0 -0
  33. {usso-0.28.28 → usso-0.28.29}/tests/test_fastapi.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: usso
3
- Version: 0.28.28
3
+ Version: 0.28.29
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.28"
7
+ version = "0.28.29"
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,10 +59,19 @@ class UssoAuth:
59
59
  USSOException: If token is invalid and raise_exception is True
60
60
  """
61
61
  exp = None
62
- for jwk_config in self.jwt_configs:
62
+
63
+ if self.from_base_usso_url:
63
64
  try:
64
65
  jwt_obj = usso_jwt.schemas.JWT(
65
- token=token, config=jwk_config, payload_class=UserData
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
+ jwt_obj.config.jwks_url = (
73
+ f"{self.from_base_usso_url}/.well-known/jwks.json?"
74
+ f"domain={iss_domain}"
66
75
  )
67
76
  if jwt_obj.verify(
68
77
  expected_token_type=expected_token_type,
@@ -72,17 +81,11 @@ class UssoAuth:
72
81
  except usso_jwt.exceptions.JWTError as e:
73
82
  exp = e
74
83
 
75
- if self.from_base_usso_url:
84
+ for jwk_config in self.jwt_configs:
76
85
  try:
77
86
  jwt_obj = usso_jwt.schemas.JWT(
78
87
  token=token, config=jwk_config, payload_class=UserData
79
88
  )
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
89
  if jwt_obj.verify(
87
90
  expected_token_type=expected_token_type,
88
91
  **kwargs,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: usso
3
- Version: 0.28.28
3
+ Version: 0.28.29
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