【发布时间】:2018-06-12 21:45:46
【问题描述】:
我目前正在使用 Flask-RESTful 构建一个 REST API,并使用 Flask-HTTPAuth 来保护一些 put 和 get 方法。我想根据我存储在数据库中的预定义用户权限来允许访问这些方法。
我的问题是,如何修改或拦截下面函数的结果,以便我可以根据端点/方法改变访问权限?基本身份验证清除后,我希望能够检查用户是否在我的数据库中具有相关权限。使用 Flask-Session 这很容易,但这里的 API 是无状态的。
@auth.verify_password
def verify_password(user, password):
query_set = models.User.objects(username=user)
if query_set:
return helpers.verify(password, query_set[0].password)
else:
return False
非常感谢。
【问题讨论】:
-
在 Miguel Grinberg 的博客上有一个很好的解释 - RESTful Authentication with Flask
-
@pjcunningham 我没有你指向的博客解决这个问题。
标签: python rest flask flask-restful flask-httpauth