Flask-HTTPAuth verify_password

时间:2014-07-30 20:47:30

标签: python flask flask-httpauth

我被困在了烧瓶 - httpauth的验证密码。

我有用户名和密码脚本,用于记录密码并将其放入一个简单的文件中。 (是的,不是最安全的,但LDAP / LOGIN使用我的知识水平无法正常使用Flask(Sandman.io)。我想将它放入sandman正在阅读的数据库中以使其变得更容易但我所做的一切试试这个应用程序死于火灾。)。

在我的包装器中,我有一部分用

制作成字典
users = {}
fileloc = '/usr/lib/sandman/user.list'
with open(fileloc) as i:
     for line in i:
          (key, val) = line.split()
          users[key] = val 

这为我提供了身份验证字典。 如果字典没有哈希密码,那么这将有效,所以我遇到一个问题就是让它在这个级别上工作。

我在下面的内容并不起作用,但是使用该示例作为测试用例,我可以使用任何用户名和密码登录(真棒吗?...)

@auth.verify_password
def verify_password(username, password):
    users = User.query.filter_by(username).first()
    if not users:
        return False
    return passlib.hash.sha256_crypt.verify(password, users.password_hash)

对此的任何帮助将不胜感激。 感谢。

1 个答案:

答案 0 :(得分:1)

您需要使用

标记用户需要登录的页面
@auth.login_required

能够查看登录是否成功(如果不是,您将收到拒绝访问的错误)。我想不出为什么你会有太多的用户名+密码组合成功,而不是太少。