python - 如何从 auth_user django python 中选择给定用户名和哈希密码的用户

标签 python mysql django api hash

我正在创建一个python api,如果在数据库中找到电子邮件和密码但密码经过哈希处理,它将从mysql数据库返回数据,他们有什么方法可以对从api输入的密码进行哈希处理以将其与mysql 密码。

我正在使用 django.contrib.auth 创建新用户,该用户会在包含哈希密码的数据库中自动创建表 auth_user。

我知道一种解决方案是将未加密的密码存储在另一个表中,但是可以在不创建另一个密码字段的情况下完成吗?

我搜索了很多,但找不到任何解决方案。

最佳答案

您可以使用authenticate 。不需要自己对密码进行哈希处理,Django 已经这样做了。您只需将用户名和密码传递给身份验证函数,它就会返回相应的 User 对象。

def my_view(request):
    username = request.POST['username']
    password = request.POST['password']
    user = authenticate(request, username=username, password=password)

关于python - 如何从 auth_user django python 中选择给定用户名和哈希密码的用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46023524/

相关文章:

python - 为什么使用 IPython 魔术 %reset 清除变量空间时 pool.join() 会挂起?

python - P4Python 问题 : p4run ("files", 'path' )返回 - 没有这样的文件,尽管返回 "dirs"的单个项目字典

java - DAO Hibernate Java Select All rows into a collection

mysql - Wordpress:将主题恢复为默认设置

python - OrderingFilter 没有属性 'filter_queryset'

python - ImageField 的 url 方法返回非 Url 值 - Django

python - tensorflow 中 GradientDescentOptimizer 和 AdamOptimizer 的区别?

每个文档的 Python elasticsearch DSL 聚合/嵌套值度量

php - 在等待长时间运行的 MySQL 查询时,如何使 PHP 脚本优雅地超时?

django - 无法迁移具有外键约束的 Django 模型