mirror of
https://github.com/jxxghp/MoviePilot.git
synced 2026-03-20 03:57:30 +08:00
fix permissions
This commit is contained in:
@@ -48,7 +48,7 @@ def get_current_active_superuser(
|
||||
return current_user
|
||||
|
||||
|
||||
def get_current_active_permission_user(
|
||||
def check_user_permission(
|
||||
permission: str,
|
||||
current_user: User = Depends(get_current_user)
|
||||
) -> User:
|
||||
@@ -57,9 +57,13 @@ def get_current_active_permission_user(
|
||||
"""
|
||||
if not current_user.is_active:
|
||||
raise HTTPException(status_code=403, detail="用户未激活")
|
||||
if current_user.is_superuser:
|
||||
return current_user
|
||||
if not current_user.permissions:
|
||||
raise HTTPException(status_code=400, detail="用户权限不足")
|
||||
permission_dict = json.loads(current_user.permissions)
|
||||
if permission_dict.get("admin"):
|
||||
return current_user
|
||||
for key in permission.split("."):
|
||||
if key not in permission_dict or not permission_dict[key]:
|
||||
raise HTTPException(status_code=400, detail="用户权限不足")
|
||||
|
||||
Reference in New Issue
Block a user