如何在Flask中实现令牌认证?

时间:2015-09-10 19:37:56

标签: python authentication flask flask-security http-token-authentication

我正在尝试允许用户使用来自单独网络服务的帐户登录我的Flask应用。我可以联系此Web服务的api并获得安全令牌。如何使用此令牌对用户进行身份验证,以便他们可以访问受限制的视图?

我不需要将用户保存到我自己的数据库中。我只想为会话验证它们。我相信这可以使用Flask-Security和@auth_token_required装饰器完成,但文档不是很详细,我不知道如何实现它。

编辑:

这是一个代码示例:

@main.route("/login", methods=["GET", "POST"])
def login():

    payload = {"User": "john", "Password": "password123"}
    url = "http://webserviceexample/api/login"
    headers = {'content-type': 'application/json'})

    #login to web service
    r = requests.post(url, headers=headers, json=payload)
    response = r.json()

    if (r.status_code is 200):
        token = response['user']['authentication_token']

        # allow user into protected view

    return render_template("login.html", form=form)


@main.route('/protected')
@auth_token_required
def protected():
    return render_template('protected.html')

0 个答案:

没有答案