abs-auth-rbac-core 0.3.2__py3-none-any.whl → 0.3.4__py3-none-any.whl

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.

Potentially problematic release.


This version of abs-auth-rbac-core might be problematic. Click here for more details.

@@ -43,8 +43,8 @@ class RBACService:
43
43
  """
44
44
  self.db = session
45
45
  self.enforcer = None
46
- self._initialize_casbin(redis_config)
47
46
  self.watcher = None
47
+ self._initialize_casbin(redis_config)
48
48
 
49
49
 
50
50
  def _initialize_casbin(self,redis_config:Optional[RedisWatcherSchema]=None):
@@ -0,0 +1,4 @@
1
+ from .role_repository import RoleRepository
2
+ from .permission_repository import PermissionRepository
3
+
4
+ __all__ = ["RoleRepository", "PermissionRepository"]
@@ -0,0 +1,12 @@
1
+ from typing import Any, List, Optional, Callable
2
+ from sqlalchemy.orm import joinedload
3
+ from contextlib import AbstractContextManager
4
+ from sqlalchemy.orm import Session
5
+ from abs_repository_core.repository.base_repository import BaseRepository
6
+ from abs_repository_core.schemas.base_schema import FindBase, FindUniqueValues
7
+ from abs_auth_rbac_core.models.permissions import Permission
8
+
9
+ class PermissionRepository(BaseRepository):
10
+ def __init__(self, db: Callable[..., Session]):
11
+ self.db = db
12
+ super().__init__(db, Permission)
@@ -0,0 +1,18 @@
1
+ from typing import Any, List, Optional, Callable
2
+ from sqlalchemy.orm import joinedload
3
+ from contextlib import AbstractContextManager
4
+ from sqlalchemy.orm import Session
5
+ from abs_repository_core.repository.base_repository import BaseRepository
6
+ from abs_auth_rbac_core.models.roles import Role
7
+ from abs_exception_core.exceptions import NotFoundError
8
+ from abs_repository_core.schemas import FilterSchema, FindBase
9
+
10
+
11
+ class RoleRepository(BaseRepository):
12
+ def __init__(self, db: Callable[..., Session]):
13
+ self.db = db
14
+ super().__init__(db, Role)
15
+
16
+
17
+
18
+
@@ -0,0 +1,4 @@
1
+ from .role_service import RoleService
2
+ from .permission_service import PermissionService
3
+
4
+ __all__ = ["RoleService", "PermissionService"]
@@ -0,0 +1,15 @@
1
+ from typing import Any, List, Optional
2
+ from abs_repository_core.services.base_service import BaseService
3
+ from abs_repository_core.schemas.base_schema import FindBase, FindUniqueValues
4
+ from abs_auth_rbac_core.models.roles import Role
5
+ from abs_auth_rbac_core.repository.permission_repository import PermissionRepository
6
+ from pydantic import BaseModel
7
+
8
+
9
+ class PermissionService(BaseService):
10
+ def __init__(self, repository:PermissionRepository):
11
+ super().__init__(repository)
12
+ self.repository = repository
13
+
14
+ def list_permissions(self, schema: FindBase, eager: bool = True):
15
+ return self.repository.read_by_options(schema, eager)
@@ -0,0 +1,18 @@
1
+ from typing import Any, List, Optional
2
+ from abs_repository_core.services.base_service import BaseService
3
+ from abs_repository_core.schemas.base_schema import FindBase, FindUniqueValues
4
+ from abs_auth_rbac_core.models.roles import Role
5
+ from abs_auth_rbac_core.repository.role_repository import RoleRepository
6
+ from pydantic import BaseModel
7
+
8
+
9
+ class RoleService(BaseService):
10
+ def __init__(self, repository:RoleRepository):
11
+ self.repository = repository
12
+ super().__init__(repository)
13
+
14
+
15
+ def list_roles(self, schema: FindBase, eager: bool = True):
16
+ return self.repository.read_by_options(schema, eager)
17
+
18
+
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: abs-auth-rbac-core
3
- Version: 0.3.2
3
+ Version: 0.3.4
4
4
  Summary: RBAC and Auth core utilities including JWT token management.
5
5
  License: MIT
6
6
  Author: AutoBridgeSystems
@@ -12,6 +12,7 @@ Classifier: Programming Language :: Python :: 3.11
12
12
  Classifier: Programming Language :: Python :: 3.12
13
13
  Classifier: Programming Language :: Python :: 3.13
14
14
  Requires-Dist: abs-exception-core (>=0.2.0,<0.3.0)
15
+ Requires-Dist: abs-repository-core (>=0.3.0,<0.4.0)
15
16
  Requires-Dist: abs-utils (>=0.4.1,<0.5.0)
16
17
  Requires-Dist: casbin (>=1.41.0,<2.0.0)
17
18
  Requires-Dist: casbin-redis-watcher (>=1.3.0,<2.0.0)
@@ -17,11 +17,17 @@ abs_auth_rbac_core/models/user_role.py,sha256=20pqmtJPzlUrI9ulHGouk8XlFgrGG7I6ik
17
17
  abs_auth_rbac_core/rbac/__init__.py,sha256=oYjtpmfrkEbwWCBAWuRoU1fM4fCpBxkF_lwQrelK1As,79
18
18
  abs_auth_rbac_core/rbac/decorator.py,sha256=pEFAW0Nn2iE4KBctPhNOmO_VLeJFDX2V9v2LsCu6kHY,1824
19
19
  abs_auth_rbac_core/rbac/policy.conf,sha256=wghhhKxgZH0rPhh1QFrIpq9nevJT3s7OxxvXiU3zzuI,305
20
- abs_auth_rbac_core/rbac/service.py,sha256=A0Mg6HFUKzRo2pksOJGu-t_QztaB20ZECc5FfIQ8IDU,38447
20
+ abs_auth_rbac_core/rbac/service.py,sha256=0SY86djzDJ8QKt9uEaWkkN-AZX-szGK9v8HRyqRwilk,38447
21
+ abs_auth_rbac_core/repository/__init__.py,sha256=tuEdEV5HsePiaEg2Jrakf-QOR3evTeS-2Tq5VqbywyU,154
22
+ abs_auth_rbac_core/repository/permission_repository.py,sha256=SQJyyErrrMnTnLJjhwZythPbYVGt5z0N5GJ5fV6Gvuo,541
23
+ abs_auth_rbac_core/repository/role_repository.py,sha256=OEPpWIm_61rOljPEcejqXyOvowYDK8Uh5K_pvRLfb3Y,562
21
24
  abs_auth_rbac_core/schema/__init__.py,sha256=v9xibJ8Wr9k0u6PEYNK0LCGUJD71SB5vxu9BZG0S7tM,46
22
25
  abs_auth_rbac_core/schema/permission.py,sha256=XvxPU68FY0PFgkF4GR2bSrzNvFB8c8OgY_d0JOJvMc8,203
26
+ abs_auth_rbac_core/service/__init__.py,sha256=zzzxVCUYYb4heFksjbktWqbST3IcTcTfOMWWC-L5_A0,136
27
+ abs_auth_rbac_core/service/permission_service.py,sha256=tWasmKe0lr1QokmKzjD08O251_ppTnfN9amqVZX_CCU,661
28
+ abs_auth_rbac_core/service/role_service.py,sha256=Q68igKS-cArHaq-tqrjWPpptnrXYImRAEwKQep0ZOBQ,633
23
29
  abs_auth_rbac_core/util/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
24
30
  abs_auth_rbac_core/util/permission_constants.py,sha256=EHM4ZkQmMWR-AyoSEf-pJL-EC_eZ4Q_JEp9w62GknHY,102747
25
- abs_auth_rbac_core-0.3.2.dist-info/METADATA,sha256=7q_MiRXEV0O829MFDvvqk0GMpa8ym0nvdGPASQ1_8Ys,23591
26
- abs_auth_rbac_core-0.3.2.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
27
- abs_auth_rbac_core-0.3.2.dist-info/RECORD,,
31
+ abs_auth_rbac_core-0.3.4.dist-info/METADATA,sha256=bXwUvNxw6j3RMLubiPw5LZQH-U36MAB19YBVolVSAJM,23643
32
+ abs_auth_rbac_core-0.3.4.dist-info/WHEEL,sha256=fGIA9gx4Qxk2KDKeNJCbOEwSrmLtjWCwzBz351GyrPQ,88
33
+ abs_auth_rbac_core-0.3.4.dist-info/RECORD,,
@@ -1,4 +1,4 @@
1
1
  Wheel-Version: 1.0
2
- Generator: poetry-core 2.1.3
2
+ Generator: poetry-core 2.1.2
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any