Beispiel #1
0
 def from_api_key(self, key):
     secret = Secret.lookup_secret(key)
     logger.debug('key is {0}'.format(key))
     logger.debug('secret is {0}'.format(secret))
     user_id = None
     if secret is not None:
         info = secret.get_info()
         if info.get('action', None) == 'api_key':
             user_id = info.get('userId', None)
     if user_id is not None:
         user = store.session.query(User).filter_by(id=user_id).first()
         logger.debug('user from api_key is {0}'.format(user))
     else:
         user = None
     return user
Beispiel #2
0
 def from_api_key(self, key):
     secret = Secret.lookup_secret(key)
     logger.debug('key is {0}'.format(key))
     logger.debug('secret is {0}'.format(secret))
     user_id = None
     if secret is not None:
         info = secret.get_info()
         if info.get('action', None) == 'api_key':
             user_id = info.get('userId', None)
     if user_id is not None:
         user = store.session.query(User).filter_by(id=user_id).first()
         logger.debug('user from api_key is {0}'.format(user))
     else:
         user = None
     return user
Beispiel #3
0
def process_password_reset(secret_key, new_password):
    user = None
    error_messages = User.is_password_valid(new_password)
    if not error_messages:
        secret = Secret.lookup_secret(secret_key)
        error_message = ''
        if secret is not None:
            secret_info = secret.get_info()
            userId = secret_info.get('userId', None)
            action = secret_info.get('action', None)
            if action == 'password_reset' and userId is not None:
                user = store.session.query(User).filter_by(id=userId).first()
                if user is not None:
                    error_messages += user.set_password(new_password)
                    if not error_messages:
                        secret.used = True
                        store.session.add(user)
                        store.session.add(secret)
                        store.session.commit()
        else:
            error_messages.append('Authorization for this action is invalid or expired.')
    return (user, error_messages)
Beispiel #4
0
def process_confirm_email(secret_key):
    error_messages = []
    user = None
    secret = Secret.lookup_secret(secret_key)
    if secret is not None:
        secret_info = secret.get_info()
        userId = secret_info.get('userId', None)
        action = secret_info.get('action', None)
        if action == 'email_confirmation' and userId is not None:
            user = store.session.query(User).filter_by(id=userId).first()
            if user is not None:
                user.email_confirmed = True
                secret.used = True
                store.session.add(user)
                store.session.add(secret)
                store.session.commit()
            else:
                error_messages.append('Authorization is for an unknown user.')
        else:
            error_mesage('Authorization is not valid for this action.')
    else:
        error_messages.append('Authorization for this action is invalid or expired.')
    return (user, error_messages)
Beispiel #5
0
def process_password_reset(secret_key, new_password):
    user = None
    error_messages = User.is_password_valid(new_password)
    if not error_messages:
        secret = Secret.lookup_secret(secret_key)
        error_message = ''
        if secret is not None:
            secret_info = secret.get_info()
            userId = secret_info.get('userId', None)
            action = secret_info.get('action', None)
            if action == 'password_reset' and userId is not None:
                user = store.session.query(User).filter_by(id=userId).first()
                if user is not None:
                    error_messages += user.set_password(new_password)
                    if not error_messages:
                        secret.used = True
                        store.session.add(user)
                        store.session.add(secret)
                        store.session.commit()
        else:
            error_messages.append(
                'Authorization for this action is invalid or expired.')
    return (user, error_messages)
Beispiel #6
0
def process_confirm_email(secret_key):
    error_messages = []
    user = None
    secret = Secret.lookup_secret(secret_key)
    if secret is not None:
        secret_info = secret.get_info()
        userId = secret_info.get('userId', None)
        action = secret_info.get('action', None)
        if action == 'email_confirmation' and userId is not None:
            user = store.session.query(User).filter_by(id=userId).first()
            if user is not None:
                user.email_confirmed = True
                secret.used = True
                store.session.add(user)
                store.session.add(secret)
                store.session.commit()
            else:
                error_messages.append('Authorization is for an unknown user.')
        else:
            error_mesage('Authorization is not valid for this action.')
    else:
        error_messages.append(
            'Authorization for this action is invalid or expired.')
    return (user, error_messages)