我被困在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
能够看到登录是否成功(如果没有,您将得到一个访问拒绝错误)。