首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何将Joomla帐户移动到我的Rails应用程序?

如何将Joomla帐户移动到我的Rails应用程序?
EN

Stack Overflow用户
提问于 2012-04-01 20:59:34
回答 2查看 280关注 0票数 0

我有一个1.5版的Joomla网站,我计划将其重写为Ruby On Rails网站。有大约300个注册用户,有没有简单的方法来迁移我的用户帐户来设计基于gem的帐户?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-04-01 21:33:13

我这样做了一些类似的迁移:

  1. 创建具有旧密码散列和盐的附加字段的devise模型用户
  2. 将所有用户从旧数据库复制到新数据库(新密码散列将为空,因为我们不知道实际用户的密码)
  3. 修补程序身份验证方法-当用户尝试使用帐户登录而不使用新密码散列时(这意味着这是旧用户)-我们使用旧身份验证算法对其进行身份验证,如果通过,我们将为其密码创建新的密码散列(使用devise)
票数 1
EN

Stack Overflow用户

发布于 2012-10-04 03:59:37

我知道这是旧的,但偶然发现了这个,然后后来找到了答案,所以我会为其他人发帖。

joomla中的密码字段是密码和随机生成的盐加上冒号和随机生成的盐的md5。

它看起来像这样:

代码语言:javascript
运行
复制
33da105d239879dae4cdaf58557985c:L8QwPXN02cltv0lkGIyD3JRDU0AR5fcA

所以回到正题...

1)查询数据库中的用户名(用户发布)

代码语言:javascript
运行
复制
user = User.find_by_username(params[:username])

2)然后拆分密码,得到数组中的第二个元素:

代码语言:javascript
运行
复制
salt = user.password.split(":")[1]

3)获取密码(由用户发布),加上盐,并将其与数据库中的密码进行比较

代码语言:javascript
运行
复制
user.password == Digest::MD5.hexdigest(params[:password] + salt).to_s + ":" + salt

如果你有正确的用户/通行证组合,它应该是真的…

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9964570

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档