fixed auth, added more endpoints and config saving
This commit is contained in:
+5
-5
@@ -8,7 +8,7 @@ from psycopg2._psycopg import connection
|
||||
from api.models import Token
|
||||
from api.utils import authenticate_user, create_access_token
|
||||
from db.internal import get_db_connection
|
||||
from settings import settings
|
||||
from settings import startup_settings
|
||||
|
||||
auth_router = APIRouter(prefix="/api", tags=["auth"])
|
||||
|
||||
@@ -18,16 +18,16 @@ async def login(
|
||||
form_data: Annotated[OAuth2PasswordRequestForm, Depends()],
|
||||
conn: Annotated[connection, Depends(get_db_connection)]
|
||||
) -> Token:
|
||||
user = authenticate_user(conn, form_data.username, form_data.password) # change db
|
||||
if not user:
|
||||
password_correct = authenticate_user(conn, form_data.username, form_data.password)
|
||||
if not password_correct:
|
||||
raise HTTPException(
|
||||
status_code=status.HTTP_401_UNAUTHORIZED,
|
||||
detail="Incorrect username or password",
|
||||
headers={"WWW-Authenticate": "Bearer"},
|
||||
)
|
||||
|
||||
access_token_expire_time = timedelta(minutes=settings.access_token_expiration_time)
|
||||
access_token_expire_time = timedelta(minutes=startup_settings.access_token_expiration_time)
|
||||
access_token = create_access_token(
|
||||
data={"sub": user.username}, expires_delta=access_token_expire_time
|
||||
data={"sub": form_data.username}, expires_delta=access_token_expire_time
|
||||
)
|
||||
return Token(access_token=access_token, token_type="bearer")
|
||||
|
||||
Reference in New Issue
Block a user