mirror of
https://github.com/bec-project/bec_atlas.git
synced 2025-07-13 22:51:49 +02:00
fix(auth): fixed form data login on /docs
This commit is contained in:
@ -5,7 +5,7 @@ from datetime import datetime, timedelta
|
||||
from functools import wraps
|
||||
|
||||
import jwt
|
||||
from fastapi import HTTPException, Request, status
|
||||
from fastapi import Depends, HTTPException, Request, status
|
||||
from fastapi.security import OAuth2PasswordBearer
|
||||
from jwt.exceptions import InvalidTokenError
|
||||
from pwdlib import PasswordHash
|
||||
@ -74,6 +74,10 @@ def decode_token(token: str):
|
||||
raise credentials_exception from exc
|
||||
|
||||
|
||||
async def get_current_user_token(token: str = Depends(oauth2_scheme)) -> UserInfo:
|
||||
return get_current_user_sync(token)
|
||||
|
||||
|
||||
async def get_current_user(request: Request) -> UserInfo:
|
||||
token = request.cookies.get("access_token")
|
||||
return get_current_user_sync(token)
|
||||
|
@ -9,6 +9,7 @@ from bec_atlas.authentication import (
|
||||
convert_to_user,
|
||||
create_access_token,
|
||||
get_current_user,
|
||||
get_current_user_token,
|
||||
verify_password,
|
||||
)
|
||||
from bec_atlas.datasources.mongodb.mongodb import MongoDBDatasource
|
||||
@ -38,11 +39,16 @@ class UserRouter(BaseRouter):
|
||||
"/user/login/form", self.form_login, methods=["POST"], dependencies=[]
|
||||
)
|
||||
self.router.add_api_route("/user/logout", self.user_logout, methods=["POST"])
|
||||
self.router.add_api_route("/user/test_login", self.test_login, methods=["POST"])
|
||||
self.router.add_api_route("/user/test_login", self.test_login, methods=["POST"])
|
||||
|
||||
@convert_to_user
|
||||
async def user_me(self, user: User = Depends(get_current_user)):
|
||||
return user
|
||||
|
||||
async def test_login(self, user: UserInfo = Depends(get_current_user_token)):
|
||||
return user
|
||||
|
||||
async def form_login(
|
||||
self, form_data: Annotated[OAuth2PasswordRequestForm, Depends()], response: Response
|
||||
):
|
||||
|
Reference in New Issue
Block a user