trovesuite 1.0.13__tar.gz → 1.0.14__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 (42) hide show
  1. {trovesuite-1.0.13/src/trovesuite.egg-info → trovesuite-1.0.14}/PKG-INFO +1 -1
  2. {trovesuite-1.0.13 → trovesuite-1.0.14}/pyproject.toml +3 -3
  3. {trovesuite-1.0.13 → trovesuite-1.0.14}/setup.py +1 -1
  4. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite/auth/auth_service.py +21 -6
  5. {trovesuite-1.0.13 → trovesuite-1.0.14/src/trovesuite.egg-info}/PKG-INFO +1 -1
  6. {trovesuite-1.0.13 → trovesuite-1.0.14}/LICENSE +0 -0
  7. {trovesuite-1.0.13 → trovesuite-1.0.14}/MANIFEST.in +0 -0
  8. {trovesuite-1.0.13 → trovesuite-1.0.14}/README.md +0 -0
  9. {trovesuite-1.0.13 → trovesuite-1.0.14}/requirements.txt +0 -0
  10. {trovesuite-1.0.13 → trovesuite-1.0.14}/setup.cfg +0 -0
  11. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite/__init__.py +0 -0
  12. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite/auth/__init__.py +0 -0
  13. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite/auth/auth_base.py +0 -0
  14. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite/auth/auth_controller.py +0 -0
  15. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite/auth/auth_read_dto.py +0 -0
  16. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite/auth/auth_write_dto.py +0 -0
  17. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite/configs/__init__.py +0 -0
  18. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite/configs/database.py +0 -0
  19. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite/configs/logging.py +0 -0
  20. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite/configs/settings.py +0 -0
  21. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite/entities/__init__.py +0 -0
  22. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite/entities/health.py +0 -0
  23. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite/entities/sh_response.py +0 -0
  24. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite/notification/__init__.py +0 -0
  25. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite/notification/notification_base.py +0 -0
  26. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite/notification/notification_controller.py +0 -0
  27. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite/notification/notification_read_dto.py +0 -0
  28. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite/notification/notification_service.py +0 -0
  29. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite/notification/notification_write_dto.py +0 -0
  30. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite/storage/__init__.py +0 -0
  31. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite/storage/storage_base.py +0 -0
  32. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite/storage/storage_controller.py +0 -0
  33. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite/storage/storage_read_dto.py +0 -0
  34. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite/storage/storage_service.py +0 -0
  35. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite/storage/storage_write_dto.py +0 -0
  36. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite/utils/__init__.py +0 -0
  37. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite/utils/helper.py +0 -0
  38. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite.egg-info/SOURCES.txt +0 -0
  39. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite.egg-info/dependency_links.txt +0 -0
  40. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite.egg-info/not-zip-safe +0 -0
  41. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite.egg-info/requires.txt +0 -0
  42. {trovesuite-1.0.13 → trovesuite-1.0.14}/src/trovesuite.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: trovesuite
3
- Version: 1.0.13
3
+ Version: 1.0.14
4
4
  Summary: TroveSuite services package providing authentication, authorization, notifications, Azure Storage, and other enterprise services for TroveSuite applications
5
5
  Home-page: https://dev.azure.com/brightgclt/trovesuite/_git/packages
6
6
  Author: Bright Debrah Owusu
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [tool.poetry]
6
6
  name = "trovesuite"
7
- version = "1.0.13"
7
+ version = "1.0.14"
8
8
  description = "TroveSuite services package providing authentication, authorization, notifications, Azure Storage, and other enterprise services for TroveSuite applications"
9
9
  authors = ["brightgclt <brightgclt@gmail.com>"]
10
10
  license = "MIT"
@@ -58,7 +58,7 @@ Documentation = "https://dev.azure.com/brightgclt/trovesuite/_git/packages"
58
58
 
59
59
  [project]
60
60
  name = "trovesuite"
61
- version = "1.0.13"
61
+ version = "1.0.14"
62
62
  description = "TroveSuite services package providing authentication, authorization, notifications, Azure Storage, and other enterprise services for TroveSuite applications"
63
63
  readme = "README.md"
64
64
  license = {text = "MIT"}
@@ -121,7 +121,7 @@ Documentation = "https://dev.azure.com/brightgclt/trovesuite/_git/packages"
121
121
  [tool.setuptools.packages.find]
122
122
  where = ["src"]
123
123
  include = ["trovesuite*"]
124
- exclude = ["*controller*", "*main*", "*test*"]
124
+ exclude = ["*test*"]
125
125
 
126
126
  [tool.setuptools.package-dir]
127
127
  "" = "src"
@@ -15,7 +15,7 @@ with open("pyproject.toml", "r", encoding="utf-8") as fh:
15
15
 
16
16
  setup(
17
17
  name="trovesuite",
18
- version="1.0.13",
18
+ version="1.0.14",
19
19
  author="Bright Debrah Owusu",
20
20
  author_email="owusu.debrah@deladetech.com",
21
21
  description="TroveSuite services package providing authentication, authorization, notifications, and other enterprise services for TroveSuite applications",
@@ -234,7 +234,6 @@ class AuthService:
234
234
  FROM main.system_user_groups sug
235
235
  INNER JOIN main.system_assign_roles sar ON sug.group_id = sar.group_id
236
236
  WHERE sug.user_id = %s
237
- AND sug.delete_status = 'NOT_DELETED'
238
237
  AND sar.is_active = true
239
238
  AND sar.delete_status = 'NOT_DELETED'
240
239
  """,
@@ -347,18 +346,34 @@ class AuthService:
347
346
  def authorize_user_from_token(token: str) -> Respons[AuthServiceReadDto]:
348
347
  """
349
348
  Convenience method to authorize a user directly from a JWT token.
350
-
349
+
351
350
  Args:
352
351
  token: JWT token string
353
-
352
+
354
353
  Returns:
355
354
  Respons[AuthServiceReadDto]: Authorization result with user roles and permissions
356
-
355
+
357
356
  Raises:
358
357
  HTTPException: If token is invalid
359
358
  """
360
- user_info = AuthService.decode_token(token)
361
- return AuthService.authorize(user_info["user_id"], user_info["tenant_id"])
359
+ credentials_exception = HTTPException(
360
+ status_code=401,
361
+ detail="Could not validate credentials",
362
+ headers={"WWW-Authenticate": "Bearer"},
363
+ )
364
+ try:
365
+ payload = jwt.decode(token, db_settings.SECRET_KEY, algorithms=[db_settings.ALGORITHM])
366
+ user_id = payload.get("user_id")
367
+ tenant_id = payload.get("tenant_id")
368
+
369
+ if user_id is None or tenant_id is None:
370
+ raise credentials_exception
371
+
372
+ data = AuthServiceWriteDto(user_id=user_id, tenant_id=tenant_id)
373
+ return AuthService.authorize(data=data)
374
+
375
+ except jwt.InvalidTokenError as exc:
376
+ raise credentials_exception from exc
362
377
 
363
378
  @staticmethod
364
379
  def get_user_permissions(user_roles: list) -> list:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: trovesuite
3
- Version: 1.0.13
3
+ Version: 1.0.14
4
4
  Summary: TroveSuite services package providing authentication, authorization, notifications, Azure Storage, and other enterprise services for TroveSuite applications
5
5
  Home-page: https://dev.azure.com/brightgclt/trovesuite/_git/packages
6
6
  Author: Bright Debrah Owusu
File without changes
File without changes
File without changes
File without changes