diff --git a/app/dependencies.py b/app/dependencies.py index c2d754c..4da0022 100644 --- a/app/dependencies.py +++ b/app/dependencies.py @@ -3,9 +3,10 @@ from datetime import datetime, timedelta from typing import Optional +import jwt from fastapi import Depends, HTTPException, status from fastapi.security import HTTPAuthorizationCredentials, HTTPBearer -from jose import JWTError, jwt +from jwt import PyJWTError from sqlalchemy.orm import Session from app.database import get_db @@ -56,7 +57,7 @@ def verify_mfa_token(token: str) -> str: detail="Invalid MFA token.", ) return username - except JWTError: + except PyJWTError: raise HTTPException( status_code=status.HTTP_401_UNAUTHORIZED, detail="MFA token expired or invalid.", @@ -95,7 +96,7 @@ def get_current_user( status_code=status.HTTP_401_UNAUTHORIZED, detail="Invalid token payload.", ) - except JWTError: + except PyJWTError: raise HTTPException( status_code=status.HTTP_401_UNAUTHORIZED, detail="Invalid or expired token.", diff --git a/requirements.txt b/requirements.txt index b9b45f8..6f4cd64 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,7 +5,7 @@ sqlalchemy==2.0.23 aiosqlite==0.19.0 pydantic==2.5.2 pydantic-settings==2.1.0 -python-jose[cryptography]==3.4.0 +PyJWT==2.15.1 passlib[bcrypt]==1.7.4 bcrypt==4.1.2 cryptography==50.0.0