diff --git a/src/api/dependacies/user_dep.py b/src/api/dependacies/user_dep.py index 429deae..f3a89d5 100644 --- a/src/api/dependacies/user_dep.py +++ b/src/api/dependacies/user_dep.py @@ -52,14 +52,14 @@ async def get_current_user_for_refresh(token: AccessTokenDep): return await get_current_user(token, verify_exp=False, check_active=True) +async def get_current_user_for_admin(token: AccessTokenDep): + admin = await get_current_user(token, verify_exp=True, check_active=True) + if not admin.is_superuser: + raise HTTPException(status_code=403, detail="Admin access required") + return admin + + CurrentUser = Annotated[TokenData, Depends(get_current_user_basic)] ActiveUser = Annotated[TokenData, Depends(get_current_active_user)] RefreshUser = Annotated[TokenData, Depends(get_current_user_for_refresh)] - - -async def get_admin_user(db: sessionDep, current_user: ActiveUser): - await UserService(db).validate_admin_user(current_user.sub) - return current_user - - -AdminUser = Annotated[TokenData, Depends(get_admin_user)] +AdminUser = Annotated[TokenData, Depends(get_current_user_for_admin)]