Flask应用程序的简单身份验证方法?

时间:2015-09-07 08:28:14

标签: python flask

我使用Python,Flask和SQLite编写的简单博客系统, 我为它创建了一个简单的授权系统。不需要任何花哨的东西,所以只需通过表单发送登录名和密码并在Flask的会话中设置标志即可。我想知道这样的事情是如何完成的,所以我没有使用任何模块。

我想知道这种方法是否正确且足够安全。

# from auth module
@auth.route('/login', methods=['POST'])
def login():
    """Login as blog admin."""

    # Successeful login conditions
    user_is_valid = request.form['user'] == current_app.config['USER']
    password_is_valid = request.form['password'] == current_app.config['PASSWORD']
    trap_is_empty = not request.form['trap']

    # Login user if credentials are correct
    if user_is_valid and password_is_valid and trap_is_empty:
        session['is_admin'] = True
        return redirect(url_for('admin.posts_page'))
    else:
        return render_template('auth.html')


# from admin module
@admin.before_request
def before_request():
    """ Before any request check admin flag, redirect to the main page if there is none. """
    if not session.get('is_admin'):
        return redirect(url_for('blog.index_page'))
    proj.db.connect()

0 个答案:

没有答案