gpt4 book ai didi

python - 将散列密码从 flask 导入到 django

转载 作者:行者123 更新时间:2023-12-04 14:13:14 25 4
gpt4 key购买 nike

我必须将我的 flask 用户迁移到 django。在 flask 中,我使用 werkzeug lib 生成了密码,例如:

generate_password_hash(value, method='sha256')

在 django 导入中我保存了密码:

u.password = hashed_pw

现在密码在数据库中如下:

'sha256$VSvtvATP$2c87cf...'

现在 django 无法验证我的密码。我如何转换密码以便 django 可以处理它?<​​/p>

最佳答案

Django 默认使用不同的密码哈希算法,即 PBKDF2 with SHA-256。将现有散列移至 Django 的唯一方法是告诉它使用不同的散列器。一个普通的 SHA-256-Hasher 不是内置的,所以你必须 write your own .


但是,我会考虑不这样做并为您的现有用户提供迁移路径,因为 PBKDF2-sha256 被认为更安全:

将这些哈希值存储在您用户的附加字段中,并提示他们在首次登录时更改密码(然后丢弃旧的哈希值,仅以 Django 方式保存密码哈希值)。您可以甚至对您的用户透明地执行此操作(即在首次登录时,在检查哈希与 Flask 中的旧哈希匹配后,根据相同的密码(此时您拥有的)生成一个新的哈希及时)并存储它,然后扔掉旧的散列。

关于python - 将散列密码从 flask 导入到 django,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62671257/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com