Esempio n. 1
0
def main():
    username = get_username()
    password = ""
    for run in range(0,6):
        password += find_in_file(rand_sequence())
    password = hash_password(password[:-1])
    insert_database(username, password)
    #delete_database(2)
    rows = show_database() or []
    [print(run) for run in rows]
Esempio n. 2
0
    def verify_user_data(username, password, type='student'):
        password = hash_password(password)
        if type == 'company':
            profile_data = vericompanypassword(username, password)
            return User.from_company_data(profile_data)

        elif type == 'student':
            profile_data = veristudentpassword(username, password)
            return User.from_student_data(profile_data)
        return None
Esempio n. 3
0
def assign_new_password():
    """Assign a new password for the existing user"""
    password = request.json['password']
    result = test_the_password(password)
    if result == False:  #if error is false
        user_email = session.get('email')
        user = User.query.filter(User.email == user_email).first()
        hashed_password = hash_password(password)
        del password
        user.password = hashed_password
        db.session.commit()

    return jsonify({'error': result})
Esempio n. 4
0
def change_password(username, password, new_pass):
    if User.load_user_by_username(connect1().cursor(), username) == None:
        print('This username doesn\'t exists, submit a correct username')
    else:
        user1 = User.load_user_by_username(connect1().cursor(), username)
        if check_password(str(password), user1.hashed_password):
            if len(new_pass) < 8:
                print('Password should have minimum 8 characters')
            else:
                user1.hashed_password = hash_password(new_pass, 'salt')
                user1.save_to_db(connect1().cursor())
                connect1().close()
                return "New password has been set"
        else:
            print('The submitted password is incorrect')
Esempio n. 5
0
def patch_me():
    user = {}
    if 'password' in flask.request.form and flask.request.form['password']:
        user['password_hash'] = hash_password(flask.request.form['password'])
    if 'name' in flask.request.form:
        user['name'] = flask.request.form['name'] or None

    try:
        user_response = requests.patch(service_uris['users'] + '/' + str(flask.session.user_id), json=user)
    except requests.exceptions.RequestException:
        return flask.render_template('error.html', reason='Users backend is unavailable'), 500

    if user_response.status_code == 200:
        user = user_response.json()
        return flask.render_template('me.html', user=user)

    return flask.render_template('error.html', reason=user_response.json()), 500
Esempio n. 6
0
def route_register():
    if request.method == 'GET':
        return render_template('register.html')

    username = request.form["username"]
    password = request.form["password"]
    password2 = request.form["password2"]

    if functions.username_exists(username):
        error_message = "The username you entered is already in use"
        return render_template('register.html', error_message=error_message)
    elif password != password2:
        error_message = "The passwords you entered did not match"
        return render_template('register.html', error_message=error_message)
    hash_password = functions.hash_password(password)
    data_handler.register_user(username, hash_password)
    return redirect("/")
Esempio n. 7
0
def post_to_register():
    try:
        user_response = requests.post(service_uris['users'], json={
            'login': flask.request.form['login'],
            'password_hash': hash_password(flask.request.form['password']),
            'name': flask.request.form.get('name', None),
            'phone': flask.request.form.get('phone', None),
            'email': flask.request.form.get('email', None),
        })
    except requests.exceptions.RequestException:
        return flask.render_template('error.html', reason='Сервис пользователей недоступен'), 500

    if user_response.status_code == 201:
        user = user_response.json()
        flask.session.user_id = user['id']
        return flask.redirect(flask.session.pop('redirect_to', '/me'), code=303)

    return flask.render_template('error.html', reason=user_response.json()), 500
Esempio n. 8
0
def login_post():
    error = {}

    if request.method == 'POST':

        username = request.form['email']
        passwd = request.form['psw']

        if username == '':
            error['e'] = 'E-mail is required'

        if passwd == '':
            error['p'] = 'Enter Password'

        if len(error) == 0:
            hash_pass = hash_password(passwd)
            myresult = ""
            val = (
                username,
                hash_pass,
            )
            try:
                my_db.connection()
                sql = "SELECT * FROM reg_tbl where e_mail=%s and  password=%s"
                my_db.cur.execute(sql, val)

                myresult = my_db.cur.fetchone()
            except:
                my_db.conn.rollback()
            finally:
                my_db.conn.close()
            if myresult is None:
                error['ep'] = "Email and password does not match"

            else:
                session['username'] = myresult
                '''resp = make_response(redirect('/admin/dashboard'))
                resp.set_cookie('userID', myresult)
                return resp'''
                return redirect(url_for('log.dashboard'))
        return render_template('homepages/login.htm', error=error)
    return redirect(url_for('log.login'))
Esempio n. 9
0
def post_to_sign_in():
    try:
        user_response = requests.get(service_uris['users'], params={
            'q': simplejson.dumps({
                'filters': [
                    {'name': 'login', 'op': '==', 'val': flask.request.form['login']},    
                    {'name': 'password_hash', 'op': '==', 'val': hash_password(flask.request.form['password'])},    
                ],
                'single': True,
            }),
        })
    except requests.exceptions.RequestException:
        return flask.render_template('error.html', reason='Сервис пользователей недоступен'), 500

    if user_response.status_code == 200:
        user = user_response.json()
        flask.session.user_id = user['id']
        return flask.redirect(flask.session.pop('redirect_to', '/me'), code=303)

    return flask.render_template('error.html', reason=user_response.json()), 500
Esempio n. 10
0
def finalizepasswordreset():
    password = request.form.get('password')
    confirm_password = request.form.get('confirmpassword')
    username = session['usernameforpwreset']
    code = session['codeforpwreset']
    session.pop('usernameforpwreset', None)
    session.pop('codeforpwreset', None)

    if password == confirm_password:
        conn = functions.db_connect()
        cursor = conn.cursor(MySQLdb.cursors.DictCursor)
        cursor.execute('select * from users where username = "******"' %
                       (username))
        user = cursor.fetchall()

        if functions.longer_than_one_day(user[0]['reset_time']):
            flash("Password reset has expired. Try again.")
            cursor.execute(
                'update users set reset_time = NULL, reset_code = NULL where username = "******"'
                % (username))
            conn.commit()
            conn.close()
            return redirect(url_for('forgotpassword'))
        elif user[0]['reset_code'] == code:
            flash("Password reset successfully")
            salt = ''.join(
                secrets.choice(string.ascii_letters + string.digits)
                for i in range(32))
            hashed_pass = functions.hash_password(password, salt)
            cursor.execute(
                'update users set passwordhash = "%s", salt = "%s", reset_code = NULL, reset_time = NULL where username = "******"'
                % (hashed_pass, salt, username))
        else:
            flash("Reset code did not match username")

        conn.commit()
        conn.close()
        return redirect(url_for('home'))
    else:
        flash("Passwords do not match.")
        return redirect(url_for('resetpassword'))
Esempio n. 11
0
def route_register():
    if request.method == 'GET':
        return render_template('register.html')

    if request.method == 'POST':
        username = request.form["username"]
        password = request.form["password"]
        password2 = request.form["password2"]

        if functions.username_exists(username):
            return render_template(
                'register.html',
                message="The username you entered is already in use")
        elif password != password2:
            return render_template(
                'register.html',
                message="Passwords do not match please fill again")
        else:
            hash_password = functions.hash_password(password)
            data_handler.register_user(username, hash_password)
            return redirect("/")
Esempio n. 12
0
def get_signup_info():
    """Add user info to database"""
    password = request.json['password']
    result = test_the_password(password)
    if result:
        return jsonify({'error': result})
    else:
        username = request.json['username']
        email = request.json['email']

        hashed_password = hash_password(password)
        user = User(username=username, password=hashed_password, email=email)

        question_id = request.json['userQuestion']
        user_answer = request.json['answer']
        answer = Answer(question_id=question_id, user=user, answer=user_answer)

        db.session.add_all([user, answer])
        db.session.commit()

        return jsonify({'error': result})
Esempio n. 13
0
	def check_pass(self,passwd):
		return self.check_pass_hash(functions.hash_password(passwd))	
Esempio n. 14
0
                    id, "<f15>What is your username?<r>\n<f246>Type " +
                    "'<f253>new<r><f246>' to create a character.\n\n")
                break

            # Load the player template from a file
            with open(
                    str(Config.get('Players', 'Location')) +
                    "/player.template", "r") as fp_read:
                template = json.loads(fp_read.read())

            set_race(template, races_db, selected_race)

            # Make required changes to template before saving again into
            # <Name>.player
            template['name'] = players[id]['exAttribute1']
            template['pwd'] = hash_password(players[id]['exAttribute2'])

            template['characterClass'] = selected_character_class

            # initial money
            starting_money_roll = \
                character_class_db[selected_character_class]['startingMoney']
            die = int(starting_money_roll.split('d')[1])
            no_of_rolls = int(starting_money_roll.split('d')[0])
            starting_gp = 0
            for roll in range(no_of_rolls):
                starting_gp += int(randint(1, die + 1) * 10)
            template['gp'] = starting_gp

            # First player becomes a witch
            if not os.path.isfile("witches"):
Esempio n. 15
0
 def set_password(self, password, salt=""):
     self._hashed_password = hash_password(password)
Esempio n. 16
0
 def __init__(self, username="", password="", salt=""):
     self._id = -1
     self._hashed_password = hash_password(password, salt)
     self.username = username
Esempio n. 17
0
def test_hash_password(password, result):
    assert hash_password(password) == result