Perl Forum User -> MT User, 密码问题原来很简单

| 0 Comments | 2 TrackBacks | WebBlog Articles

This is a SiteLog of Easun's WebBlog。

装了自带 Community Pack 1.6 的 Movable Type 4.21 Pro,也用 Community Pack 功能建立了测试的 MT Forum,初衷是想用这个MT Forum 取代 基于 LB5000 ES Lite 建立的本站半废弃状态的 Perl Forum
简单的作了测试,帖子的转移很简单,用Perl写个小玩意,导出成 MT 系统能认识的文本就足够了。而User的转移貌似出现的密码问题上了。
当初匆匆检测功能,没有细思量,总之, Perl Forum 采用的 MD5 加密密码,而 MT User 的密码则是采用随机数和原始密码用 Unix crypt function 来加密的。貌似转化起来很是有点问题。
好久没有看原代码了,今天晚上有点时间,看了看 MT 关于 Auth 的代码。发现其实很简单,在用户输入的时候多一重判断就是

思路有了,代码也就很Easy了:)
临时用 hint 字段存储 md5 后的 Perl Forum 密码,设特定的MT User 密码字段为 (esb),然后检测md5($pass),判断,转化就是。
简单的修改如下:
找到 ${MTDIR}lib/MT/Auth/MT.pm,定位函数 sub is_valid_password


return $crypted ? $real_pass eq $pass :
crypt($pass, $real_pass) eq $real_pass;

上方加设以下代码:

if ($real_pass eq '(esb)') { my $esb_hint = $author->column('hint'); ($esb_hint,my $real_hint) = split(/\#esb\#/,$esb_hint); require Digest::MD5; my $md5_pass = Digest::MD5::md5_hex($pass); if ($md5_pass eq $esb_hint){ $author->set_password($pass); $author->hint($real_hint); # $author->column('hint', $real_hint); $author->save or die $author->errstr; return 1; } return 0; }

完成后测试一切OK,现在缺少的就是等一个比较用空的时候,彻底迁移 Perl Forum :D

引用通告|TrackBacks (2)

本日志的TrackBack URL: http://easun.org/cgi-bin/mtos/tb_mt_41.pl/232.

以下罗列的是网络上引用了本日志 [Perl Forum User -> MT User, 密码问题原来很简单] 的 Blog 连接。

真有点搞不明白 6A 了,不知道搞什么鬼,若干个版本。Movable Type, Movable Type Pro,Movable Type Open Source,这几个版本貌似都免费提供,当然还有传说中的 Movable Type Commercial 。 升级到4.21时,我选择的是 6A 提供给 ProNet Members 专用的版本。这个版本不是所谓的 Movable Type Pro ,而只是比 Movable Type 多带了一个 Professional Pack 1.2, 从而支... [阅读更多...]

在 Test Forum 测试了几天,解决了用户和帖子转移问题,今天,正式把 Perl Forum 迁移 到了 MT 4.21 pro 平台,也算整个 Site 统一进了数据库时代:) MT Forum 说起来实际上并不是完整的 Forum ,和真正的 Forum 对比起来,貌似少了很多功能,但是全静态化对小规模,小用户群的准 Forum 还是很有吸引力的。究竟它有完整的 注册用户发/回帖功能,满足自己的需求了:) 所有的原 Perl Forum (Base on LB_ES Lite) 用户全部转... [阅读更多...]

发表该文评论|Leave a comment

最近发表|Recent Entries

[八卦]话说修路这件事

建国路貌似又在修。根本没有办法步行。这个让我想起来一个笑话:话说某A国人来北京,在东城区丢了一枚戒指,于是乎找警察,警察告诉他尽可能的帮他找。过了几天,此人发现整个东城的马路都挖开了,于是感叹曰:北京的警察真好。看来这个笑话的地点可以换在朝阳了?是不是某人的戒指又丢了?PS: 城市规划城市规划,年年挖年年修。。。生命不休,挖路不止…

[SiteLog]Blog升级到了 Movable Type Pro 4.25

Thisi is a SiteLog of Easun's WebBlog.今天终于升级到了 Movable Type Pro 4.25 ,貌似一切顺利,也没有发现什么特别大的改动?只是 Community Pack 变成了 1.62, Professional Pack 升级成了1.3 。其他的一切顺利,模版也没有修改,我甚至连重建前台HTML的事情都没有做。。。就这样吧,继续用这个风格,等有时间了再慢慢研究吧。如果非要说有什么修改的话,就是评论的登陆方式又丰富了很多,包括…

IE脚本错误,可以尝试以下办法

IE 脚本错误是个很麻烦的问题,一般定位都是 JS 引擎 和 VB 引擎出错。但是有时间反复注册 jscript.dll 和 vbscript.dll 也不能解决问题。具体表现 部分 js 解析正常,而部分就不行,尤其是基于 Web2.0的网站。不说别的,就连 ie7/ie8 本身第一次运行向导的"保存设置"也出错。其实研究下,貌似都出现在 XML 解释上? 重新注册…