Nattyboi commited on
Commit
97aa98f
·
1 Parent(s): b8433cb

login stuff

Browse files
Files changed (2) hide show
  1. app.py +2 -2
  2. tokenManagement.py +28 -0
app.py CHANGED
@@ -292,7 +292,7 @@ def login(user:UserBody):
292
  print(result)
293
  access_token = encode_jwt(user_id=user_id,access_token=accessToken)
294
  return {"refreshToken":refreshToken,"accessToken":access_token}
295
- return JSONResponse(status_code=401,content="Invalid login details")
296
 
297
 
298
  @app.post("/auth/signup",tags=["Authentication"])
@@ -336,7 +336,7 @@ def refresh_access_token(refresh_token:Token, authorization: str = Header(...)):
336
 
337
  # Here, you would validate the token (e.g., check with a JWT library)
338
  decoded_user_id,decoded_access_token = decode_jwt(token)
339
- is_valid = verify_access_token(db_uri=MONGO_URI, user_id=decoded_user_id, access_token=decoded_access_token)
340
  if is_valid != True: # Example check
341
  raise HTTPException(status_code=401, detail="Invalid token")
342
  new_access_token = create_accessToken(db_uri=MONGO_URI,user_id=decoded_user_id,refresh_token=refresh_token.refreshToken)
 
292
  print(result)
293
  access_token = encode_jwt(user_id=user_id,access_token=accessToken)
294
  return {"refreshToken":refreshToken,"accessToken":access_token}
295
+ return JSONResponse(status_code=401,content={"detail":"Invalid login details"})
296
 
297
 
298
  @app.post("/auth/signup",tags=["Authentication"])
 
336
 
337
  # Here, you would validate the token (e.g., check with a JWT library)
338
  decoded_user_id,decoded_access_token = decode_jwt(token)
339
+ is_valid = verify_refresh_access_token(db_uri=MONGO_URI, user_id=decoded_user_id, access_token=decoded_access_token)
340
  if is_valid != True: # Example check
341
  raise HTTPException(status_code=401, detail="Invalid token")
342
  new_access_token = create_accessToken(db_uri=MONGO_URI,user_id=decoded_user_id,refresh_token=refresh_token.refreshToken)
tokenManagement.py CHANGED
@@ -145,6 +145,34 @@ def verify_access_token(db_uri: str, user_id: str, access_token: str) -> bool:
145
  pass
146
  return False
147
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
148
 
149
 
150
 
 
145
  pass
146
  return False
147
 
148
+ def verify_refresh_access_token(db_uri: str, user_id: str, access_token: str) -> bool:
149
+
150
+ current_time = datetime.datetime.now()
151
+ """
152
+
153
+ """
154
+ # Connect to MongoDB
155
+ client = MongoClient(db_uri)
156
+ db = client["crayonics"]
157
+ collection = db["AccessToken"]
158
+ docs = collection.find({"user_id":user_id})
159
+ for doc in docs:
160
+
161
+ if doc==None:
162
+ return False
163
+ else:
164
+ if str(doc['_id']) == access_token:
165
+ streaks_doc={}
166
+ streaks_doc['user_id'] = str(user_id)
167
+ streaks_manager(db_uri=db_uri,document=streaks_doc)
168
+ return True
169
+ else:
170
+ streaks_doc={}
171
+ streaks_doc['user_id'] = str(user_id)
172
+ streaks_manager(db_uri=db_uri,document=streaks_doc)
173
+ pass
174
+ return False
175
+
176
 
177
 
178