🐛 fix(utils.py): fix missing return statement in api_key_security function
🔀 refactor(utils.py): refactor create_super_user function to use Optional types for username and password parameters
This commit is contained in:
parent
d9deb6fd5f
commit
31abe8d67e
1 changed files with 13 additions and 5 deletions
|
|
@ -36,7 +36,11 @@ async def api_key_security(
|
||||||
settings_manager = get_settings_manager()
|
settings_manager = get_settings_manager()
|
||||||
result = None
|
result = None
|
||||||
if settings_manager.auth_settings.AUTO_LOGIN:
|
if settings_manager.auth_settings.AUTO_LOGIN:
|
||||||
return settings_manager.auth_settings.API_KEY_SECRET_KEY
|
# Get the first user
|
||||||
|
settings_manager.auth_settings.FIRST_SUPERUSER
|
||||||
|
result = get_user_by_username(
|
||||||
|
db, settings_manager.auth_settings.FIRST_SUPERUSER
|
||||||
|
)
|
||||||
|
|
||||||
elif not query_param and not header_param:
|
elif not query_param and not header_param:
|
||||||
raise HTTPException(
|
raise HTTPException(
|
||||||
|
|
@ -50,13 +54,15 @@ async def api_key_security(
|
||||||
else:
|
else:
|
||||||
result = check_key(db, header_param)
|
result = check_key(db, header_param)
|
||||||
|
|
||||||
if result:
|
if not result:
|
||||||
return result
|
|
||||||
else:
|
|
||||||
raise HTTPException(
|
raise HTTPException(
|
||||||
status_code=status.HTTP_403_FORBIDDEN,
|
status_code=status.HTTP_403_FORBIDDEN,
|
||||||
detail="Invalid or missing API key",
|
detail="Invalid or missing API key",
|
||||||
)
|
)
|
||||||
|
if isinstance(result, ApiKey):
|
||||||
|
return result.user
|
||||||
|
elif isinstance(result, User):
|
||||||
|
return result
|
||||||
|
|
||||||
|
|
||||||
async def get_current_user(
|
async def get_current_user(
|
||||||
|
|
@ -139,7 +145,9 @@ def create_token(data: dict, expires_delta: timedelta):
|
||||||
|
|
||||||
|
|
||||||
def create_super_user(
|
def create_super_user(
|
||||||
db: Session = Depends(get_session), username: str = None, password: str = None
|
db: Session = Depends(get_session),
|
||||||
|
username: Optional[str] = None,
|
||||||
|
password: Optional[str] = None,
|
||||||
) -> User:
|
) -> User:
|
||||||
settings_manager = get_settings_manager()
|
settings_manager = get_settings_manager()
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue