Flask-HTTPAuth verify_password



我被困在flask-httpauth的verify_password.

我有用户名和密码脚本,散列密码,并把它放入一个简单的文件。(是的,不是最安全的,但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 

这给了我用于身份验证的字典。如果字典没有散列密码,这将工作,所以我留下了一个问题是让它在这个级别上工作。

我下面有什么不工作,但使用的例子作为一个测试用例,我能够登录几乎任何用户名和密码(awesome对吧?…)

@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)

如果有任何帮助,我将不胜感激。谢谢。

您需要用

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

能够看到登录是否成功(如果没有,您将得到一个访问拒绝错误)。

我想不出还有什么其他的原因可以解释为什么成功的用户名+密码组合太多,而不是太少。

最新更新