Beispiel #1
0
def reset_password_by_id(id_user, new_pass):
    """
    Mettre a jour le mot de passe d'un utilisateur, SANS VERIFICATION de l'ancien mot de passe.

    Utilisé uniquement dans le cas du rest des mots de passe.
    Pour un changement de mot de passe, voir :func:`update_password_by_id`.

    :param id_user: user id_user
    :param old_pass: ancien mot de passe, doit être vérifié pour voir si on a le droit d'update (mieux qu'un fresh login)
    :param new_pass: nouveau mot de passe

    :rtype : bool

    :return : True si ok, False si nok
    """
    result = False
    if new_pass is not None:
        up = __utilisateur.update(
        ).where(
            __utilisateur.c.id_utilisateur == id_user
        ).values(
            password = gen(new_pass,'pbkdf2:sha512:1000', 12)
        )
        engine.execute(up)
        result = True
    return result
Beispiel #2
0
def update_password_by_id(id_user, old_pass, new_pass):
    """
    Mettre a jour le mot de passe d'un utilisateur. Pour verification, on utilise son ancien mot de passe

    :param id_user: user id_user
    :param old_pass: ancien mot de passe, doit être vérifié pour voir si on a le droit d'update (mieux qu'un fresh login)
    :param new_pass: nouveau mot de passe

    :rtype : bool

    :return : True si ok, False si nok
    """
    result = False
    res = __select_user_by_id(id_user)
    if old_pass is None:
        old_pass = ""
    if res is not None and new_pass is not None:
        row = res.first()
        if row is not None and check(row['password'], old_pass) and new_pass is not None:
            up = __utilisateur.update(
            ).where(
                __utilisateur.c.id_utilisateur == id_user
            ).values(
                password = gen(new_pass,'pbkdf2:sha512:1000', 12)
            )
            engine.execute(up)
            result = True
    return result
Beispiel #3
0
def reg_user():
    if request.method == 'POST':
        form = request.form
        name = form['name']
        district = form['district']
        email = form['email']
        password = gen(form['password'])
        cur = mysql.connection.cursor()
        cur.execute(
            "INSERT INTO user(name, email, district, password) VALUES(%s, %s, %s, %s);",
            (name, email, district, password))
        mysql.connection.commit()
        cur.close()
        flash("Registered Successfully! You can now log in", "success")
        return redirect('/user/login/')
    return render_template('register_user.html')
Beispiel #4
0
def create_user(mail, password):
    """
    Créer un utilisateur dans la base de données.
    :param mail: le mail de l'utilisateur, unique
    :param password: le mot de passe
    """
    res = False
    if mail is not None:
        ins = __utilisateur.insert().values(
            id_ancien = None,
            mail = mail.lower(),
            password = gen(password,'pbkdf2:sha512:1000', 12)
        )
        engine.execute(ins)
        res = True
    return res