async def get_current_account(token: str = Depends(oauth2_scheme), db: Session = Depends(get_db)): credentials_exception = HTTPException( status_code=status.HTTP_401_UNAUTHORIZED, detail="Could not validate credentials", headers={"WWW-Authenticate": "Bearer"}, ) try: payload = jwt.decode(token, SECRET_KEY, algorithms=[ALGORITHM]) email: str = payload.get("sub") if email is None: raise credentials_exception token_data = schemas.TokenData(email=email) except JWTError: raise credentials_exception account = get_account(db, email=token_data.email) if account is None: raise credentials_exception print("see role: " + account.role.role_name) schema_account = schemas.Account(user_id=account.user[0].user_id, account_id=account.account_id, email=account.email, role_id=account.role_id, disabled=account.disabled) return schema_account
async def get_current_user(token: str = Depends(oauth2_scheme), db: Session = Depends(get_db)): try: credentials_exception = HTTPException( status_code=status.HTTP_401_UNAUTHORIZED, detail="Invalid Credentials", headers={"WWW-Authenticate": "Bearer"}, ) try: payload = jwt.decode(token, crud.SECRET_KEY, algorithms=[crud.ALGORITHM]) email: str = payload.get("sub") if email is None: raise credentials_exception token_data = schemas.TokenData(email=email) except JWTError: raise credentials_exception user = get_user(db=db, email=token_data.email) if user is None: raise credentials_exception return user except Exception as e: print(e) raise HTTPException(status_code=400, detail={"message": "Invalid Credentials"})
async def get_current_user(token: str = Depends(oauth2_scheme), db: Session = Depends(database.get_db)): credentials_exception = HTTPException( status_code=status.HTTP_401_UNAUTHORIZED, detail="Could not validate credentials", headers={"WWW-Authenticate": "Bearer"}, ) try: print("jwt decode started") payload = jwt.decode(token, SECRET_KEY, algorithms=[ALGORITHM]) print("jwt decode successfull") username: str = payload.get("sub") print(username) if username is None: raise credentials_exception token_data = schemas.TokenData(username=username) except JWTError: print("jwt error!!!") raise credentials_exception user = db.query(models.User).filter( models.User.username == token_data.username).first() if user is None: print("user doesn't exist") raise credentials_exception return user
def verify_tokens(token: str, credentials_exception): try: payload = jwt.decode(token, SECRET_KEY, algorithms=[ALGORITHM]) email: str = payload.get("sub") if email is None: raise credentials_exception token_data = schemas.TokenData(email=email) except JWTError: raise credentials_exception
async def get_current_google_user(security_scopes: SecurityScopes, token: str = Depends(oauth2_scheme), db: Session = Depends(get_db)): credentials_exception = HTTPException( status_code=HTTP_403_FORBIDDEN, detail="Could not validate credentials") #db = get_db() print(token) qrl.log_info(logging, db) qrl.log_info(logging, token) if security_scopes.scopes: authenticate_value = f'Bearer scope="{security_scopes.scope_str}"' else: authenticate_value = f"Bearer" credentials_exception = HTTPException( status_code=status.HTTP_401_UNAUTHORIZED, detail="Could not validate credentials", headers={"WWW-Authenticate": authenticate_value}, ) if token is not None: try: payload = jwt.decode(token, SECRET_KEY, algorithms=[ALGORITHM]) print("the payload is.................") print(payload) print("-----------------------------------") #qrl.log_info(logging, payload.__dict__) email: str = payload.get("sub") if email is None: raise credentials_exception token_scopes = payload.get("scopes", []) print(token_scopes) print(payload.get('scopes')) token_data = schemas.TokenData(scopes=token_scopes, username=email) except (JWTError, ValidationError): return credentials_exception print("I am the current_user") print(email) if email is not None: authenticated_user = crud.authenticate_user_email(db, email) print(authenticated_user.id) if authenticated_user.position == 'owner': hotel_names = crud.get_hotels_by_username( db, authenticated_user.id) print(hotel_names) return schemas.HotelScope(email=authenticated_user.email, position=authenticated_user.position, hotels=hotel_names) else: return schemas.HotelScope(email=authenticated_user.email, position=authenticated_user.position, hotels=[])
def verify_token(token: str): credentials_exception = HTTPException( status_code=status.HTTP_401_UNAUTHORIZED, detail="Could not validate credentials", headers={"WWW-Authenticate": "Bearer"}, ) try: payload = jwt.decode(token, SECRET_KEY, algorithms=[ALGORITHM]) email: str = payload.get("sub") if email is None: raise credentials_exception token_data = schemas.TokenData(email=email) except JWTError: raise credentials_exception
def get_current_user(token: str = Depends(oauth2_scheme)): credentials_exception = HTTPException( status_code=status.HTTP_401_UNAUTHORIZED, detail="Could not validate credentials", headers={"WWW-Authenticate": "Bearer"}, ) try: payload = jwt.decode(token, SECRET_KEY, algorithms=[ALGORITHM]) username = payload.get("sub") if username is None: raise credentials_exception except PyJWTError: raise credentials_exception return schemas.TokenData(current_user=username)
async def verify_token(credentials_exception: HTTPException, token: str = Depends(oauth2_scheme)): try: payload = jwt.decode(token, SECRET_KEY, algorithms=[ALGORITHM]) email: str = payload.get("sub") if email is None: raise credentials_exception token_data = schemas.TokenData(email=email) except JWTError: raise credentials_exception # user = ModelUser.get_user_email(token_data.email, db) user = await ModelUser.get_user_email_async(token_data.email) if user is None: raise credentials_exception return user
async def get_current_user(token: str = Depends(oauth2_scheme), db: Session = Depends(get_db)): credentials_exception = HTTPException( status_code=status.HTTP_401_UNAUTHORIZED, detail="Could not validate credentials", headers={"WWW-Authenticate": "Bearer"} ) try: payload = jwt.decode(token, utils.SECRET_KEY, algorithms=[utils.ALGORITHM]) username: str = payload.get("sub") if username is None: raise credentials_exception token_data = schemas.TokenData(username=username) except PyJWTError: raise credentials_exception user = crud.get_user_by_username(db, token_data.username) if user is None: raise credentials_exception return user
async def get_current_detail_account(token: str = Depends(oauth2_scheme), db: Session = Depends(get_db)): credentials_exception = HTTPException( status_code=status.HTTP_401_UNAUTHORIZED, detail="Could not validate credentials", headers={"WWW-Authenticate": "Bearer"}, ) try: payload = jwt.decode(token, SECRET_KEY, algorithms=[ALGORITHM]) email: str = payload.get("sub") if email is None: raise credentials_exception token_data = schemas.TokenData(email=email) except JWTError: raise credentials_exception account = get_account(db, email=token_data.email) if account is None: raise credentials_exception print("see role: " + account.role.role_name) schema_account = schemas.Account(user_id=account.user[0].user_id, account_id=account.account_id, email=account.email, role_id=account.role_id, disabled=account.disabled) db_user = db.query(models.User).filter( models.User.user_id == account.user[0].user_id).first() db_user.lastTimeActive = datetime.today() db.commit() db.refresh(db_user) print("User Activity | user_id: ", db_user.user_id, " | time: ", datetime.today()) return schema_account