예제 #1
0
def config_values():
    if request.method == 'GET':
        config = get_config_data()
        if config == 0:
            return json.dumps({"success": 0})
        else:
            config["success"] = 1
            return json.dumps(config)

    if request.method == 'POST':
        data = request.get_data(as_text=True)
        json_data = json.loads(data)

        # print(data)
        response = {
            "success": 1,
            "message": ""
        }
        if check_password(json_data["password"]) == 0:
            response["success"] = 0
            response["message"] = 'Password is wrong'
            return json.dumps(response)

        config = get_config_data()

        config["name"] = json_data["device_name"]
        config["number_of_devices"] = int(json_data["number_of_devices"])
        config["device_ip"] = json_data["ip_string"]

        set_config_data(json.dumps(config))

        return json.dumps(response)
예제 #2
0
def submit_account():
    """Get email and password, sign-in (if exist), or create new user"""

    email = request.form.get("email")
    password = request.form.get("password")
    first_name = request.form.get("first_name")
    last_name = request.form.get("last_name")

    user = User.query.filter_by(email=email).all()

    if not is_email_address_valid(email):
        flash("Please enter a valid email address")
        return redirect("/sign-up")
    if check_password(password):
        if not user:
            password = password.encode('utf-8')
            password = hashpw(password, gensalt())
            new_user = User(email=email,
                            password=password,
                            first_name=first_name,
                            last_name=last_name)
            db.session.add(new_user)
            db.session.commit()
            flash("Congratulations! You successfully created an account!")
        else:
            flash("An account with this email address already exists!")
        return redirect("/")
    else:
        return redirect("/sign-up")
예제 #3
0
파일: auth.py 프로젝트: Marx86/trambroid
    def authenticate(self, username=None, password=None):
        try:
            drupal_user = DrupalUser.objects.get(name=username)
        except DrupalUser.DoesNotExist:
            return None

        pwd_valid = check_password(password, drupal_user.pass_field)
        if drupal_user and pwd_valid:
            try:
                user = User.objects.get(username=username)
            except User.DoesNotExist:
                user = User(
                    username=username,
                )

                user.first_name, user.last_name = split_name(drupal_user.name)
                user.email = drupal_user.mail
                user.set_password(password)
                user.is_staff = False
                user.is_superuser = False
                user.save()

                user_profile = UserProfile.objects.get(user=user)
                user_profile.avatar = str(drupal_user.picture) + '.png'
                user_profile.timezone = drupal_user.timezone
                user_profile.signature = drupal_user.signature
                user_profile.save()
            return user
        return None
예제 #4
0
    def authenticate(self, username=None, password=None):
        try:
            drupal_user = DrupalUser.objects.get(name=username)
        except DrupalUser.DoesNotExist:
            return None

        pwd_valid = check_password(password, drupal_user.pass_field)
        if drupal_user and pwd_valid:
            try:
                user = User.objects.get(username=username)
            except User.DoesNotExist:
                user = User(username=username, )

                user.first_name, user.last_name = split_name(drupal_user.name)
                user.email = drupal_user.mail
                user.set_password(password)
                user.is_staff = False
                user.is_superuser = False
                user.save()

                user_profile = UserProfile.objects.get(user=user)
                user_profile.avatar = str(drupal_user.picture) + '.png'
                user_profile.timezone = drupal_user.timezone
                user_profile.signature = drupal_user.signature
                user_profile.save()
            return user
        return None
예제 #5
0
def list_all_messages(username, password):
    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):
            messages = user1.load_messages_by_user_id(connect1().cursor())
            return messages
        else:
            print('The submitted password is incorrect')
예제 #6
0
def delete_user(username, password):
    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):
            user1.delete(connect1().cursor())
            connect1().close()
            return f"User {username} has been successfully removed"
        else:
            print('The submitted password is incorrect')
예제 #7
0
def login_post():
    login = request.form["login"]
    password = request.form["haslo"]
    if functions.check_password(login, password, mysql.connection.cursor()):
        global loggedin
        loggedin = True
        global pesel
        pesel = login
        personal_data = functions.get_personal_data(pesel,
                                                    mysql.connection.cursor())
        return render_template("login.html",
                               loggedin=loggedin,
                               personal_data=personal_data)
    else:
        return render_template("login.html", loggedin=False)
예제 #8
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')
예제 #9
0
def send_a_massage(username, password, to_id, text):
    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):
            a = User.load_user_by_id(connect1().cursor(), to_id)
            if a != None:
                if len(text) < 255:
                    from_id = user1.id
                    message1 = Messages(from_id, to_id, text)
                    message1.save_to_db(connect1().cursor())
                    return "Message sent"
                else:
                    print('Your message is too long, should be maximum 255 characters')
            else:
                print("Receiver\'s id is incorrect")
        else:
            print('Wrong password')
예제 #10
0
def loggedin():
    redirect_to = redirect(url_for('login'))
    if request.method == 'POST':

        conn = functions.db_connect()
        cursor = conn.cursor(MySQLdb.cursors.DictCursor)

        username = request.form.get('uname')
        password = request.form.get('psw')
        cursor.execute("select * from users")
        conn.close()
        users = cursor.fetchall()
        for user in users:
            if user['username'] == username:
                if functions.check_password(user, password):
                    session['username'] = escape(request.form.get('uname'))
                    session['logged_in'] = True
                    redirect_to = redirect(url_for('home'))
                else:
                    flash('Invalid password')

    return redirect_to
예제 #11
0
def network_values():
    if request.method == 'GET':
        config = get_network_data()
        if config == 0:
            return json.dumps({"success": 0})
        else:
            config["success"] = 1
            return json.dumps(config)

    if request.method == 'POST':
        data = request.get_data(as_text=True)
        json_data = json.loads(data)

        # print(data)
        response = {
            "success": 1,
            "message": ""
        }
        if check_password(json_data["password"]) == 0:
            response["success"] = 0
            response["message"] = 'Password is wrong'
            return json.dumps(response)

        config = get_network_data()

        config["device_ip"] = json_data["device_ip"]
        config["default_gateway"] = json_data["default_gateway"]
        config["dns_server"] = json_data["dns_server"]
        config["dns_server2"] = json_data["dns_server2"]

        set_network_data(json.dumps(config))
        # if restart_network() == 0:
        #     response["success"] = 0
        #     response["message"] = "Error while restarting network"

        return json.dumps(response)
예제 #12
0
def login_process():
    """Process login."""

    # Get form variables
    email = request.form["email"]
    password = request.form["password"]

    user = User.fetch_by_email(email)

    if not user:
        flash("No such user")
        return redirect("/login")

    pw_hash = user.password

    if check_password(pw_hash, password) is False:
        flash("Incorrect password")
        return redirect("/login")

    session["user_id"] = user.user_id
    # session["payer_seller"] = user.payer_seller

    flash("Logged in")
    return redirect("/dashboard")
예제 #13
0
group.add_argument('-e',
                   '--encrypt',
                   action='store_true',
                   help='Encrypts the file that is specified')
group.add_argument('-d',
                   '--decrypt',
                   action='store_true',
                   help='Decrypts the file that is specified')
args = parser.parse_args()

if (not (os.path.isfile(args.filepath))):
    print("The path you entered is not a file")
    sys.exit(0)

if (args.encrypt):
    key = functions.check_password()
    with open(args.filepath, 'rb') as f:
        data = f.read()

    fernet = Fernet(key)
    encrypted = fernet.encrypt(data)

    with open(args.filepath, 'wb') as f:
        f.write(encrypted)
elif (args.decrypt):
    key = functions.check_password()
    with open(args.filepath, 'rb') as f:
        data = f.read()

    fernet = Fernet(key)
    decrypted = fernet.decrypt(data)