Files
SMANAGE/_flask_backup/Utils/Permission.py
T
2026-06-16 11:55:14 +08:00

28 lines
809 B
Python

from tools import *
from AppBridge import *
from Utils.Models import *
def PermissionVerifier(permission: int, attributes: typing.List[typing.Any]) -> bool:
if not permission:
return True
ELTUser = UGM.GetELTUser()
flask.g.ELTUser = ELTUser
if not ELTUser:
return False
for i in attributes:
abac_match = GERPUserABAC.query.filter(sqlalchemy.and_(
GERPUserABAC.UserUUID == ELTUser.UserUUID,
GERPUserABAC.HierarchicalPermissionIdentifiers == i
)).first()
if abac_match:
continue
try:
rbac_result = GERPRole.CheckUserPermission(ELTUser.UserUUID, i)
except Exception as e:
rbac_result = False
if rbac_result:
continue
return False
return True