deleted-user-auth-fix: удаленный пользователь не может авторизоваться #37
@ -36,9 +36,9 @@ async def get_user_by_token(
|
||||
|
||||
user_repo = UserRepository(db)
|
||||
user = await user_repo.get_by_username(username)
|
||||
if user is None:
|
||||
if user is None or not user.is_active:
|
||||
user = await user_repo.get_by_email(username)
|
||||
if user is None:
|
||||
if user is None or not user.is_active:
|
||||
raise HTTPException(
|
||||
status_code=status.HTTP_401_UNAUTHORIZED,
|
||||
detail="Пользователь не найден",
|
||||
|
||||
@ -14,7 +14,7 @@ class AuthService:
|
||||
|
||||
async def authenticate_user(self, username: str, password: str) -> Optional[Token]:
|
||||
user = await self.user_repo.authenticate(username, password)
|
||||
if not user:
|
||||
if not user or not user.is_active:
|
||||
return None
|
||||
access_token = create_access_token(data={"sub": user.username})
|
||||
refresh_token = create_refresh_token(data={"sub": user.username})
|
||||
@ -26,7 +26,7 @@ class AuthService:
|
||||
|
||||
async def authenticate_user_via_email(self, email: str) -> Optional[Token]:
|
||||
user = await self.user_repo.authenticate_via_email(email)
|
||||
if not user:
|
||||
if not user or not user.is_active:
|
||||
return None
|
||||
access_token = create_access_token(data={"sub": user.email})
|
||||
refresh_token = create_refresh_token(data={"sub": user.email})
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user