RABC fejlesztése és beélesítése hibák kijavításával
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
# /opt/docker/dev/service_finder/backend/app/core/rbac.py
|
||||
from fastapi import HTTPException, Depends, status
|
||||
from app.api.deps import get_current_user
|
||||
from app.models.identity import User
|
||||
from app.models.identity import User, UserRole
|
||||
from app.core.config import settings
|
||||
|
||||
class RBAC:
|
||||
@@ -11,11 +11,11 @@ class RBAC:
|
||||
|
||||
async def __call__(self, current_user: User = Depends(get_current_user)):
|
||||
# 1. Superadmin mindent visz (Rank 100)
|
||||
if current_user.role == "superadmin":
|
||||
if current_user.role == UserRole.SUPERADMIN:
|
||||
return True
|
||||
|
||||
# 2. Dinamikus rang ellenőrzés a központi rank_map alapján
|
||||
role_key = current_user.role.value.upper() # A DEFAULT_RANK_MAP nagybetűs kulcsokat vár
|
||||
role_key = current_user.role.value # A DEFAULT_RANK_MAP már nagybetűs kulcsokat használ
|
||||
user_rank = settings.DEFAULT_RANK_MAP.get(role_key, 0)
|
||||
if user_rank < self.min_rank:
|
||||
raise HTTPException(
|
||||
|
||||
Reference in New Issue
Block a user