Joomla! 系统间同步策略

工作需要将旧系统用户转移到新系统.实现用户从旧系统登陆,可以自动导入到新系统.遇到问题有三个.在旧系统登录后,如何将信息传入新系统,而不会被假冒,并在新系统自动生成用户,进而在新系统实现自动登录.
首先,如何从登陆旧系统后传递用户信息到新系统,特别是明文的密码.同时该通信过程要既对新系统透明,又对外要封闭.
思路如下,在旧系统中开发一个插件,用户登陆触发,将登陆密码和用户信息存放下来.存放到哪里呢?下面memcached 闪耀出场.
就放memcached 里.当然memcached和新旧系统的IP地址要在同一个局域网网段里.比如192.168.1.x .想一想为什么? 这样,我们的系统拥有两套IP地址,就可以“黑白”两道行走了。白的是广域网地址.让:用户直接访问,黑的是局域网地址,让系统内部应用调用行走.
接下来, 生成一个key 和用户信息放到memcached.
下一步,旧系统里作一个程序,可以在用户登陆后,自动根据当前用户身份,生成包含用户名和Key 的新系统链接。如XXX&user=xXX&key=XXX .并定向到该链接。
新系统接收到该参数后, 首先到memcached里提取key 对应的数据进行校验,无误后,如果新系统不存在该用户则调用Joomla接口生成用户.随后调用mainframe->login 接口自动登陆。
补充一条,memcached,设置key 的时效长短最好和用户登陆时效一样,想:一想,为啥?

出处:

http://bbs.phpchina.com/thread-147424-1-1.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值