我被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 这为我提供了用于身份验证的字典。如果字典没有散列的密码,这将会起作用,所以我留下了一个问题,就是让它在这个级别上工作。
我下面的方法不起作用,但是我使用了这个例子作为测试用例,并且我可以使用任何用户名和密码登录(很棒,对吧?)
@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)在这方面的任何帮助都将非常感谢。谢谢。
发布于 2014-07-31 05:01:01
您需要标记用户需要登录的页面
@auth.login_required为了能够查看登录是否成功(如果不成功,您将得到一个拒绝访问的错误)。我想不出还有什么其他的原因,为什么你会有太多的username+password组合成功,而不是太少。
https://stackoverflow.com/questions/25046634
复制相似问题