def _validate_basic_auth_credentials(self) -> bool: """ Validates username:pwd if they are the same as stored credentials. Returns ------- bool True if credentials has key login and credentials[login] equal SHA3(pwd), False otherwise. """ login = self.username.lower() self.logger.log( logging.DEBUG, f'Validating credentials for user name "{login}"' ) if login not in self.credentials: self.logger.log(logging.ERROR, f'User name "{self.username}" not found') return False hashed_pwd = hash_password(login, self.password) if self.credentials[login].lower() != hashed_pwd.lower(): self.logger.log( logging.ERROR, f'Wrong password for user name "{self.username}"' ) return False return True
def update_user(args, credentials): username = args.username.lower() logger.info(f'Updating username "{username}"') if username not in credentials: logger.error(f'Username "{username}" not found in passwords file. ' 'Do you want to run "add" command instead?') return False password = args.password logger.info(f'Updating username "{username}" password to "{password}"') credentials[username] = hash_password(username, password) return store_passwords_file(args.pwdfile, credentials)
def add_user(args, credentials): username = args.username.lower() logger.info(f'Adding username "{username}"') if username in credentials: logger.error(f'Can\'t add username {username} as it is already present' ' in passwords file. Do you want to run the ' '"update" command instead?') return False password = args.password logger.info(f'Adding username "{username}" with password "{password}"...') credentials[username] = hash_password(username, password) if (store_passwords_file(args.pwdfile, credentials)): logger.info(f'Added username "{username}" with password "{password}"') else: logger.info(f'Could not add username "{username}" , ' f'password "{password}" to file')
def add_user(args, credentials): username = args["--username"].lower() if username in credentials: logger.error( f"Can't add username {username} as it is already present" " in passwords file. Do you want to run the " '"update" command instead?' ) return False logger.info(f'Adding username "{username}"') password = args["--password"] logger.info(f'Adding username "{username}" with password "{password}"...') credentials[username] = hash_password(username, password) if store_passwords_file(args["--pwdfile"], credentials): logger.info(f'Added username "{username}" with password "{password}"') else: logger.info( f'Could not add username "{username}" , ' f'password "{password}" to file' )