Code clean up. A lot.

This commit is contained in:
Scott Idem
2022-01-07 16:01:22 -05:00
parent 5489b80ff0
commit f2be7767cb

View File

@@ -164,18 +164,23 @@ async def patch_user_obj(
# ### BEGIN ### API User Routers ### user_new_auth_key() ###
# Generate a new one time use authorization key
@router.get('/user/new_auth_key', response_model=Resp_Body_Base)
# Generate a new one time use authorization key for login without password
# Updated 2022-01-07
# @router.get('/user/new_auth_key', response_model=Resp_Body_Base)
@router.get('/user/{user_id}/new_auth_key', response_model=Resp_Body_Base)
async def user_new_auth_key(
user_id: Optional[str] = Query(None, min_length=2, max_length=50),
return_obj: Optional[bool] = False,
user_id: str = Query(..., min_length=11, max_length=22),
return_obj: bool = False,
commons: Common_Route_Params = Depends(common_route_params),
):
log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
log.debug(locals())
if user_id := redis_lookup_id_random(record_id_random=user_id, table_name='user'): pass
else: return mk_resp(data=None, status_code=404, response=commons.response, status_message='The user ID was invalid or not found.')
update_user_data = {}
update_user_data['id_random'] = user_id
update_user_data['id'] = user_id
update_user_data['auth_key'] = secrets.token_urlsafe(default_num_bytes)
if user_rec_update_result := sql_update(table_name='user', data=update_user_data):
@@ -183,28 +188,30 @@ async def user_new_auth_key(
if return_obj:
user_obj = load_user_obj(
user_id=user_id,
inc_contact=False,
inc_organization=False,
inc_person=False
user_id = user_id,
).dict(by_alias=commons.by_alias, exclude_unset=commons.exclude_unset)
data = user_obj
else:
user_obj = {}
# user_obj['allow_auth_key'] = update_user_data['allow_auth_key']
user_obj['auth_key'] = update_user_data['auth_key']
# user_obj['enable'] = update_user_data['enable']
# user_obj['enable_from'] = update_user_data['enable_from']
# user_obj['enable_to'] = update_user_data['enable_to']
return mk_resp(data=user_obj, response=commons.response)
else:
log.info('The user record was not updated with a new auth_key')
log.debug(user_rec_update_result)
return mk_resp(data=False, status_code=404, response=commons.response)
# ### END ### API User Routers ### user_new_auth_key() ###
# ### BEGIN ### API User Routers ### user_authenticate() ###
# Authenticate a username and password OR by user ID and authorization key
# An authorization key can only be done once. It will be deleted if found.
# A new key will need to be requested for a particular user each time.
# NOTE: Should this be divided into username/password and user ID/auth key endpoints?
# NOTE: Should this be divided into username/password and user ID/auth key endpoints? Probably vote 2x
# Updated 2021-10-06
@router.get('/user/authenticate', response_model=Resp_Body_Base)
async def user_authenticate(