gpt4 book ai didi

php - 与旧的moodle平台的用户建立新的moodle平台

转载 作者:行者123 更新时间:2023-12-04 09:40:00 24 4
gpt4 key购买 nike

我建立了一个 Moodle 平台,它应该与在另一台服务器上运行的旧 Moodle 平台具有相同的内容。旧平台为1.9版本,新平台为3.8.3版本。我想保留旧平台的相同用户,但我注意到当我在两个平台上创建具有相同密码的用户时,用户表中密码的哈希值是不同的。

重要的是要指出,我尝试使用相同密码但不同数据(用户名、电子邮件等)的用户。我认为两个版本都使用 MD5 哈希作为密码。两个用户的表具有完全相同的字段。

是否可以将用户从旧平台的数据库复制到新平台的数据库中,同时保持兼容性? (也就是说,用户可以使用他们的旧凭据登录这个新平台)如果是这样,我应该考虑什么?

最佳答案

Moodle 多年来没有使用 MD5 哈希作为密码,因为它不安全。 Moodle使用PHP函数password_hash() - 在撰写本文时,它使用 bcrypt,但可能会随着 PHP 的 future 版本而改变。

Moodle 应该能够检测到密码使用的是旧的、不安全的散列算法,并在该用户下次登录时自动更新散列密码(在根据旧的散列对其进行身份验证后)。请参阅此处的代码:https://github.com/moodle/moodle/blob/bbb7dfc62ea295099ad23e8a83497269c19ddcd1/lib/moodlelib.php#L4824

当然,最好的办法是设置 Moodle 3.8 站点的测试副本,从 Moodle 1.9 站点(您知道其密码)的现有帐户之一复制用户记录并尝试一下。

请注意,这不会传输任何自定义配置文件字段、任何用户首选项或任何用户交互(例如论坛帖子、作业提交等)等数据。

关于php - 与旧的moodle平台的用户建立新的moodle平台,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62376867/

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