繁体   English   中英

使用哈希密码进行django身份验证或将其转换为纯文本

[英]django authentication with hashed password or convert it to plain

可以说我有用户的电子邮件

user = User.objects.get(email="anyone@anymail.com")

现在,我要像这样登录该用户:

user = authenticate(username=username, password=user.password)

验证时不要使用哈希密码。 但是在这里我只能得到哈希密码。 我如何登录该用户,可以说要更改其密码

谢谢

您无需登录用户即可更改密码。 您可以使用Django的set_password()帮助函数来更改密码。

from django.contrib.auth.models import User

user = User.objects.get(email="anyone@anymail.com")
user.set_password('new_password')
user.save() # call save explicitly

根据文档,

set_password(原始密码)
将用户的密码设置为给定的原始字符串,并注意密码哈希。 不保存用户对象。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM