我正在研究openxx(在django上运行),用户将从其他站点重定向到这里,并且我从那里得到哈希密码。Authenticate(username,password) 除了像“dragon”这样的原始密码而不是散列密码,
所以我需要将 authenticate() 与散列密码一起使用,以便我可以获得“.backend”属性并继续我的生活。
当我在login(request,user)
没有验证方法的情况下使用时。出现此错误:
request.session[BACKEND_SESSION_KEY] = user.backend
AttributeError: 'User' object has no attribute 'backend'
所以我需要使用 authenticate 函数在我的用户对象中获取 .backend 属性。
user = authenticate(username=username, password=password)
是验证函数的格式,这里的密码是原始密码,如“abc”,我拥有的是哈希密码(这是“abc”密码存储在db中的方式)。
我现在卡住了,有没有办法在 django 中使用散列密码进行身份验证和登录?