abs-auth-rbac-core 0.1.8__tar.gz → 0.1.9__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 (27) hide show
  1. {abs_auth_rbac_core-0.1.8 → abs_auth_rbac_core-0.1.9}/PKG-INFO +1 -1
  2. {abs_auth_rbac_core-0.1.8 → abs_auth_rbac_core-0.1.9}/abs_auth_rbac_core/rbac/service.py +13 -5
  3. {abs_auth_rbac_core-0.1.8 → abs_auth_rbac_core-0.1.9}/pyproject.toml +1 -1
  4. {abs_auth_rbac_core-0.1.8 → abs_auth_rbac_core-0.1.9}/README.md +0 -0
  5. {abs_auth_rbac_core-0.1.8 → abs_auth_rbac_core-0.1.9}/abs_auth_rbac_core/__init__.py +0 -0
  6. {abs_auth_rbac_core-0.1.8 → abs_auth_rbac_core-0.1.9}/abs_auth_rbac_core/auth/__init__.py +0 -0
  7. {abs_auth_rbac_core-0.1.8 → abs_auth_rbac_core-0.1.9}/abs_auth_rbac_core/auth/auth_functions.py +0 -0
  8. {abs_auth_rbac_core-0.1.8 → abs_auth_rbac_core-0.1.9}/abs_auth_rbac_core/auth/jwt_functions.py +0 -0
  9. {abs_auth_rbac_core-0.1.8 → abs_auth_rbac_core-0.1.9}/abs_auth_rbac_core/auth/middleware.py +0 -0
  10. {abs_auth_rbac_core-0.1.8 → abs_auth_rbac_core-0.1.9}/abs_auth_rbac_core/models/__init__.py +0 -0
  11. {abs_auth_rbac_core-0.1.8 → abs_auth_rbac_core-0.1.9}/abs_auth_rbac_core/models/base_model.py +0 -0
  12. {abs_auth_rbac_core-0.1.8 → abs_auth_rbac_core-0.1.9}/abs_auth_rbac_core/models/gov_casbin_rule.py +0 -0
  13. {abs_auth_rbac_core-0.1.8 → abs_auth_rbac_core-0.1.9}/abs_auth_rbac_core/models/permissions.py +0 -0
  14. {abs_auth_rbac_core-0.1.8 → abs_auth_rbac_core-0.1.9}/abs_auth_rbac_core/models/rbac_model.py +0 -0
  15. {abs_auth_rbac_core-0.1.8 → abs_auth_rbac_core-0.1.9}/abs_auth_rbac_core/models/role_permission.py +0 -0
  16. {abs_auth_rbac_core-0.1.8 → abs_auth_rbac_core-0.1.9}/abs_auth_rbac_core/models/roles.py +0 -0
  17. {abs_auth_rbac_core-0.1.8 → abs_auth_rbac_core-0.1.9}/abs_auth_rbac_core/models/seeder/permission_seeder.py +0 -0
  18. {abs_auth_rbac_core-0.1.8 → abs_auth_rbac_core-0.1.9}/abs_auth_rbac_core/models/user.py +0 -0
  19. {abs_auth_rbac_core-0.1.8 → abs_auth_rbac_core-0.1.9}/abs_auth_rbac_core/models/user_permission.py +0 -0
  20. {abs_auth_rbac_core-0.1.8 → abs_auth_rbac_core-0.1.9}/abs_auth_rbac_core/models/user_role.py +0 -0
  21. {abs_auth_rbac_core-0.1.8 → abs_auth_rbac_core-0.1.9}/abs_auth_rbac_core/rbac/__init__.py +0 -0
  22. {abs_auth_rbac_core-0.1.8 → abs_auth_rbac_core-0.1.9}/abs_auth_rbac_core/rbac/decorator.py +0 -0
  23. {abs_auth_rbac_core-0.1.8 → abs_auth_rbac_core-0.1.9}/abs_auth_rbac_core/rbac/policy.conf +0 -0
  24. {abs_auth_rbac_core-0.1.8 → abs_auth_rbac_core-0.1.9}/abs_auth_rbac_core/schema/__init__.py +0 -0
  25. {abs_auth_rbac_core-0.1.8 → abs_auth_rbac_core-0.1.9}/abs_auth_rbac_core/schema/permission.py +0 -0
  26. {abs_auth_rbac_core-0.1.8 → abs_auth_rbac_core-0.1.9}/abs_auth_rbac_core/util/__init__.py +0 -0
  27. {abs_auth_rbac_core-0.1.8 → abs_auth_rbac_core-0.1.9}/abs_auth_rbac_core/util/permission_constants.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: abs-auth-rbac-core
3
- Version: 0.1.8
3
+ Version: 0.1.9
4
4
  Summary: RBAC and Auth core utilities including JWT token management.
5
5
  License: MIT
6
6
  Author: AutoBridgeSystems
@@ -174,8 +174,10 @@ class RBACService:
174
174
  [f"user:{user_uuid}", permission.resource, permission.action, permission.module]
175
175
  for permission in permissions
176
176
  ]
177
- self.enforcer.add_policies(policies)
178
- self.enforcer.save_policy()
177
+ added_policies = self.enforcer.add_policies(policies)
178
+ if added_policies:
179
+ self.enforcer.save_policy()
180
+ self.enforcer.load_policy()
179
181
  return user_permissions
180
182
 
181
183
 
@@ -191,9 +193,10 @@ class RBACService:
191
193
  [f"user:{user_uuid}", permission.resource, permission.action, permission.module]
192
194
  for permission in permissions
193
195
  ]
194
- self.enforcer.remove_policies(policies)
195
- self.enforcer.save_policy()
196
-
196
+ removed_policies = self.enforcer.remove_policies(policies)
197
+ if removed_policies:
198
+ self.enforcer.save_policy()
199
+ self.enforcer.load_policy()
197
200
  user_permissions.delete(synchronize_session=False)
198
201
  session.commit()
199
202
  return True
@@ -825,6 +828,11 @@ class RBACService:
825
828
  if self.enforcer.enforce(role_uuid, resource, action, module):
826
829
  return True
827
830
  return False
831
+
832
+ def check_permission_by_user(self,user_uuid:str,resource:str,action:str,module:str) -> bool:
833
+ if self.enforcer.enforce(f"user:{user_uuid}", resource, action, module):
834
+ return True
835
+ return False
828
836
 
829
837
  def get_role(self, role_uuid: str,session: Optional[Session] = None) -> Any:
830
838
  """Get role by uuid"""
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "abs-auth-rbac-core"
3
- version = "0.1.8"
3
+ version = "0.1.9"
4
4
  description = "RBAC and Auth core utilities including JWT token management."
5
5
  authors = [
6
6
  {name = "AutoBridgeSystems", email = "info@autobridgesystems.com"}