|
|
|
@ -34,12 +34,27 @@ async def register(user: UserRegisterDTO):
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
hashed_password = get_password_hash(user.password)
|
|
|
|
|
user_id = users_collection.insert_one({"username": user.username, "password": hashed_password})
|
|
|
|
|
user_id = users_collection.insert_one({
|
|
|
|
|
"username": user.username,
|
|
|
|
|
"password": hashed_password,
|
|
|
|
|
"is_admin": False
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
access_token_expires = timedelta(minutes=config.ACCESS_TOKEN_EXPIRE_MINUTES)
|
|
|
|
|
access_token = create_access_token(data={"sub": user.username}, expires_delta=access_token_expires)
|
|
|
|
|
access_token = create_access_token(
|
|
|
|
|
data={
|
|
|
|
|
"sub": user.username,
|
|
|
|
|
"is_admin": False
|
|
|
|
|
},
|
|
|
|
|
expires_delta=access_token_expires
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
return {"access_token": access_token, "token_type": "bearer", "user_id": str(user_id.inserted_id)}
|
|
|
|
|
return {
|
|
|
|
|
"access_token": access_token,
|
|
|
|
|
"token_type": "bearer",
|
|
|
|
|
"user_id": str(user_id.inserted_id),
|
|
|
|
|
"is_admin": False
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@auth_router.post(
|
|
|
|
|
path="/login",
|
|
|
|
@ -56,10 +71,20 @@ async def login(form_data: OAuth2PasswordRequestForm = Depends()):
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
access_token_expires = timedelta(minutes=config.ACCESS_TOKEN_EXPIRE_MINUTES)
|
|
|
|
|
access_token = create_access_token(data={"sub": form_data.username}, expires_delta=access_token_expires)
|
|
|
|
|
|
|
|
|
|
return {"access_token": access_token, "token_type": "bearer", "user_id": str(user["_id"])}
|
|
|
|
|
access_token = create_access_token(
|
|
|
|
|
data={
|
|
|
|
|
"sub": form_data.username,
|
|
|
|
|
"is_admin": user.get("is_admin", False)
|
|
|
|
|
},
|
|
|
|
|
expires_delta=access_token_expires
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
return {
|
|
|
|
|
"access_token": access_token,
|
|
|
|
|
"token_type": "bearer",
|
|
|
|
|
"user_id": str(user["_id"]),
|
|
|
|
|
"is_admin": user.get("is_admin", False)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@auth_router.get(
|
|
|
|
|
path="/logout",
|
|
|
|
|