将用户帐户从旧的 LAMP 网站迁移到 Django



我们正在用Django重建我们的旧分析网站。我们的旧网站是用LAMP堆栈构建的。我们拥有所有帐户的用户名和密码,采用非散列形式。

现在我想将所有这些用户名和密码迁移到我们的 Django 网站。我们所有的用户都应该能够使用相同的用户名和密码登录新的 Django 网站。 有人可以建议一些最佳实践来做到这一点吗?如何有效地实现这一目标?

我们所有的帐户都以非散列形式出现

请不要那样做。Django 是为安全而设计的。默认情况下,Django 使用 PBKDF2 算法和 SHA256 哈希。

因此,在数据迁移过程中,您必须通过哈希函数传递纯文本密码,并将哈希密码保存到数据库。

通过应用上述方法,您无需强制用户重置其密码。

最简单的解决方案是将所有用户帐户从旧平台导出到 Djangoauth_users表中。使用python脚本或SQL技巧-y扑克-y。

虽然从用户的角度来看,这种方法需要更多的工作,但它是最安全的选择(特别是因为您声明的密码未加密(。

在所有用户名/电子邮件都在新表中后,我(个人(不会为这些迁移的用户帐户设置密码。相反,请确保你已经设置了 django 密码重置屏幕(这是内置在 django 中的(。然后,您可以让用户重置自己的密码,允许他们访问新应用程序。

最新更新