def user_id_for_session_id(self, session_id=None): """ overloads from parent. looks for user_id in the database and returns it :param session_id: session id :return: user id. """ if session_id: UserSession.load_from_file() user_session_list = UserSession.search({'session_id': session_id}) if user_session_list: session = user_session_list[0] user_id = session.user_id if hasattr(session, 'created_at'): current = datetime.utcnow() if user_id: if self.session_duration <= 0 \ or not self.session_duration: return user_id if (session.created_at + timedelta( seconds=self.session_duration)) < current: return None return user_id return None
def destroy_session(self, request=None): """ Destroy the session """ if request is None: return False session_id = self.session_cookie(request) if session_id is None: return False user_id = self.user_id_for_session_id(session_id) if not user_id: return False session_ids = UserSession.search({'session_id': session_id}) if not session_ids: return False try: session_ids[0].remove() UserSession.save_to_file() except Exception: return False return True
def user_id_for_session_id(self, session_id=None): """ returns the User ID by requesting UserSession in the database based on session_id """ if type(session_id) is not str: return None try: users_sessions = UserSession.search({'session_id': session_id}) except Exception: return None if len(users_sessions) == 0: return None user_session = users_sessions[0] if self.session_duration <= 0: return user_session.user_id created_at_session = user_session.created_at duration_session = created_at_session + timedelta( seconds=self.session_duration ) if duration_session < datetime.now(): return None return user_session.user_id
def destroy_session(self, request=None): """Remove Session from Database""" if request is None: return False session_id = self.session_cookie(request) if session_id is None: return False user_id = self.user_id_for_session_id(session_id) if not user_id: return False user_session = UserSession.search({'session_id': session_id}) if not user_session: return False user_session = user_session[0] try: user_session.remove() UserSession.save_to_file() except Exception: return False return True
def user_id_for_session_id(self, session_id=None): """ Make user id to session Args: session_id: String of the session Return: User ID if not is expired """ if session_id is None: return None UserSession.load_from_file() user_sess = UserSession.search({'session_id': session_id}) if not user_sess: return None user = user_sess[0] if user is None: return None expired_tm = user.created_at + \ timedelta(seconds=self.session_duration) if expired_tm < datetime.now(): return None return user.user_id
def destroy_session(self, request=None): """ destroy/logout of the session overloaded """ if super().destroy(request): sess = self.session_cookie(request) sessData = UserSession.search({"session_id": sess}) if sessData is not None: [x.remove() for x in sessData] return True return False
def user_id_for_session_id(self, session_id=None): """Get user ID from session """ if not session_id: return None UserSession.load_from_file() users = UserSession.search({'session_id': session_id}) for u in users: delta = timedelta(seconds=self.session_duration) if u.created_at + delta < datetime.now(): return None return u.user_id
def user_id_for_session_id(self, session_id=None): """ returns the User ID by requesting UserSession in the database based on session_id """ if not session_id: return user_sessions = UserSession.search({'session_id': session_id}) if not user_sessions: return try: sessions = UserSession.search({'session_id': session_id}) if not sessions: return if sessions[0].created_at + \ timedelta(seconds=self.session_duration) < datetime.utcnow(): return None return sessions[0].user_id except Exception: return
def user_id_for_session_id(self, session_id=None): """ that returns the User ID by requesting UserSession in the database based on session_id """ if not session_id: return None UserSession.load_from_file() users = UserSession.search({'session_id': session_id}) for user in users: delta = timedelta(seconds=self.session_duration) if user.created_at + delta < datetime.now(): return None return user.user_id
def destroy_session(self, request=None): """ This module is for session DB auth which stores sessions in db """ from os import getenv if not request: return None session_id = self.session_cookie(request) if not session_id: return None user_id = self.user_id_for_session_id(session_id) if not user_id: return None user = UserSession.search(user_id) if not user: return None user.remove()
def user_id_for_session_id(self, session_id=None): """ get user_id associated with session_id from storage """ if not session_id: return None try: user_list = UserSession.search({'session_id': session_id}) except Exception: return None if not user_list: return None from datetime import datetime, timedelta start = timedelta(seconds=self.session_duration) if datetime.now() > user_list[0].created_at + start: return None return user_list[0].user_id
def destroy_session(self, request=None): """Delete the user session / log out """ if request: session_id = self.session_cookie(request) if not session_id: return False if not self.user_id_for_session_id(session_id): return False users = UserSession.search({'session_id': session_id}) for u in users: u.remove() UserSession.save_to_file() return True return False
def destroy_session(self, request=None): """ destroy session of given user_id in request """ from os import getenv if not request: return None session_id = self.session_cookie(request) if not session_id: return None user_id = self.user_id_for_session_id(session_id) if not user_id: return None user = UserSession.search(user_id) if not user: return None user.remove()
def destroy_session(self, request=None): """ Overloads method in SessionExpAuth Destroys UserSession based on the Session ID from user cookie """ if request is None: return False session_id = self.session_cookie(request) if not session_id: return False session_list = UserSession.search({'session_id': session_id}) if len(session_list) < 1: return False current_session = session_list[0] current_session.remove() return True
def user_id_for_session_id(self, session_id=None): """ This module is for session DB auth which stores sessions in db """ if not session_id: return None try: user_list = UserSession.search({'session_id': session_id}) except Exception: return None if not user_list: return None from datetime import datetime, timedelta start_time = timedelta(seconds=self.session_duration) if user_list[0].created_at + start_time < datetime.now(): return None return user_list[0].user_id
def destroy_session(self, request=None): """ destroy_session function """ if request is None: return None session_id = self.session_cookie(request) if session_id is None: return None try: user = UserSession.search({'session_id': session_id}) except Exception: user = [] if len(users) == 0: return None user[0].remove()
def destroy_session(self, request=None) -> bool: """ destroy_session. """ if request: session_id = self.session_cookie(request) if session_id: if super().destroy_session(request): try: us_list = UserSession.search({session_id: session_id}) for us in us_list: us.remove() return True except Exception: return False return False
def destroy_session(self, request=None): """ that destroys the UserSession based on the Session ID from the request cookie """ if request: session_id = self.session_cookie(request) if not session_id: return False if not self.user_id_for_session_id(session_id): return False users = UserSession.search({'session_id': session_id}) for user in users: user.remove() UserSession.save_to_file() return True return False
def user_id_for_session_id(self, session_id=None): """ Get the user id for session """ if session_id is None: return None UserSession.load_from_file() session_ids = UserSession.search({'session_id': session_id}) if not session_ids: return None if datetime.utcnow() > session_ids[0].created_at + timedelta( seconds=self.session_duration): return None return session_ids[0].user_id
def user_id_for_session_id(self, session_id=None): """ Returns a User ID based on a Session ID. """ if session_id is None: return None UserSession.load_from_file() user = UserSession.search({'session_id': session_id}) if not user: return None user = user[0] timing = timedelta(seconds=self.session_duration) + user.created_at if timing < datetime.now(): return None return user.user_id
def user_id_for_session_id(self, session_id=None): """ Return the user ID at the current session ID """ if session_id is None: return None try: sessions = UserSession.search({session_id: session_id}) if sessions is None: return None session_time = timedelta(seconds=self.session_duration) if sessions[0].created_at + session_time < datetime.utcnow(): return None return sessions[0].user_id except ValueError: return None
def destroy_session(self, request=None): """ destroys the UserSession based on the Session ID from the request cookie """ if not request: return session_id = self.session_cookie(request) if not session_id: return try: users = UserSession.search({'session_id': session_id}) if not users: return for user in users: user.remove() except Exception: return
def user_id_for_session_id(self, session_id=None): """ user_id_for_session_id. """ if not session_id: return try: us_list = UserSession.search({session_id: session_id}) for us in us_list: created_at = us.get('created_at', None) if not created_at: return if (datetime.now() > created_at + timedelta(seconds=self.session_duration)): return return us.get('user_id', None) except Exception: return
def destroy_session(self, request=None): """ destroys the UserSession based on the Session ID from the request cookie """ if not request: return False try: session_id = self.session_cookie(request) if not session_id: return False objs = UserSession.search({"session_id": session_id}) del self.user_id_by_session_id[session_id] if objs and len(objs) > 0: objs[0].remove() return True except Exception as e: return False
def user_id_for_session_id(self, session_id=None): """ Returns the User ID by requesting UserSession in the database based on session_id """ if session_id is None: return None UserSession.load_from_file() is_valid_user = UserSession.search({'session_id': session_id}) if not is_valid_user: return None is_valid_user = is_valid_user[0] start_time = is_valid_user.created_at time_delta = timedelta(seconds=self.session_duration) if (start_time + time_delta) < datetime.now(): return None return is_valid_user.user_id
def user_id_for_session_id(self, session_id: str = None) -> str: """ user_id_for_session_id function """ if session_id is None: return None try: user_session = UserSession.search({'session_id': session_id}) except Exception: user_session = [] if len(user_session) == 0: return None if self.session_duration <= 0: return user_session[0].user_id create_at = user_session[0].created_at create_at += timedelta(0, self.session_duration) if create_at < datetime.now(): return None return user_session[0].user_id
def user_id_for_session_id(self, session_id=None): """ Overloads method in SessionExpAuth Returns User ID by requesting UserSession in DB using session_id """ if session_id is None: return None UserSession.load_from_file() user_session = UserSession.search({'session_id': session_id}) if not user_session: return None session = user_session[0] session_dictionary = self.user_id_by_session_id.get(session_id) if not session_dictionary: return None created_at = session_dictionary.get('created_at') expiration = created_at + timedelta(seconds=self.session_duration) if expiration < datetime.now(): return None return session.user_id
def destroy_session(self, request=None): ''' Destroy session associated with request. ''' # Get session ID from request cookie session_id = self.session_cookie(request) if session_id is None: return False # Get user ID associated with session ID user_id = self.user_id_for_session_id(session_id) if user_id is None: return False # Remove session record from file found_user = UserSession.search({'session_id': session_id}) if not found_user: return False found_user = found_user[0] found_user.remove() return True
def user_id_for_session_id(self, session_id=None): """User ID for Session ID Database""" if session_id is None: return None UserSession.load_from_file() user_session = UserSession.search({'session_id': session_id}) if not user_session: return None user_session = user_session[0] expired_time = user_session.created_at + \ timedelta(seconds=self.session_duration) if expired_time < datetime.utcnow(): return None return user_session.user_id
def destroy_session(self, request=None): """ Destroy a current session """ if request is None: return False session_id = self.session_cookie(request) if session_id is None: return False try: sessions = UserSession.search({session_id: session_id}) if sessions is None: return False sessions[0].remove() return True except ValueError: return False