+ -
当前位置:首页 → 问答吧 → 难倒300人的PHP问题(discuz)

难倒300人的PHP问题(discuz)

时间:2011-11-07

来源:互联网

用JSP做了一个OA,现在增加了一个discuz做的BBS
想在OA中实现单点登录
就是在OA中增加一个超链接,就可以进入BBS
不用再登录
这个问题难倒了好多好多人
望高手指教

作者: itbossbaby   发布时间: 2011-11-07

1:把oa的用户名和密码 导入到 bbs中
2:用连接地址把oa的用户名和密码 传递到bbs登录页面 自动提交

作者: wklilong   发布时间: 2011-11-07

这个说起来挺简单的,坐起来挺难的

作者: itbossbaby   发布时间: 2011-11-07

你先了解discuz用户验证机制吧。
了解了就简单明了了
引用 2 楼 itbossbaby 的回复:

这个说起来挺简单的,坐起来挺难的

作者: ci1699   发布时间: 2011-11-07

引用 2 楼 itbossbaby 的回复:
这个说起来挺简单的,坐起来挺难的

不难。导入数据库 容易吧
用连接的方法传值会吧 去论坛登陆页看下 用户名 和 密码 的html name属性
然后看下 form 的 name属性 用js 放在 登陆页的 onload属性里 一个 form1.submit()
明白了吧

作者: wklilong   发布时间: 2011-11-07

或者研究dz的写入的cookie或session,重写你的oa的登录cookie或session

作者: yunprince   发布时间: 2011-11-07

引用 5 楼 yunprince 的回复:
或者研究dz的写入的cookie或session,重写你的oa的登录cookie或session


两套系统里 session 肯定是不行了 估计cookie 也不行。
你这方法行不通

作者: wklilong   发布时间: 2011-11-07

引用 6 楼 wklilong 的回复:
引用 5 楼 yunprince 的回复:
或者研究dz的写入的cookie或session,重写你的oa的登录cookie或session


两套系统里 session 肯定是不行了 估计cookie 也不行。
你这方法行不通

就算是跨域cookie,不是也可以实现吗?有什么不行的!

作者: baoxiaohua   发布时间: 2011-11-07

引用 7 楼 baoxiaohua 的回复:
引用 6 楼 wklilong 的回复:
引用 5 楼 yunprince 的回复:
或者研究dz的写入的cookie或session,重写你的oa的登录cookie或session


两套系统里 session 肯定是不行了 估计cookie 也不行。
你这方法行不通

就算是跨域cookie,不是也可以实现吗?有什么不行的!


我只是感觉 行不通
即使可以 肯定会很麻烦

作者: wklilong   发布时间: 2011-11-07

把discuz登录后的流程看一下。看是怎么验证的。
伪一个出来有多难呢?
不是session就是cookie。

当然用户数据还是必须。

引用 8 楼 wklilong 的回复:

引用 7 楼 baoxiaohua 的回复:
引用 6 楼 wklilong 的回复:
引用 5 楼 yunprince 的回复:
或者研究dz的写入的cookie或session,重写你的oa的登录cookie或session


两套系统里 session 肯定是不行了 估计cookie 也不行。
你这方法行不通

就算是跨域cookie,不是也可以实现吗?有什么不行的!
……

作者: ci1699   发布时间: 2011-11-07

研究一下openID

作者: TottyAndBaty   发布时间: 2011-11-07

如果不考虑是否discuz。可以考虑sso登录。至于discuz是否有特殊的实现,没研究过,不敢妄言

作者: ohmygirl   发布时间: 2011-11-07

或者做http认证呗

作者: TottyAndBaty   发布时间: 2011-11-07

建议看看ucenter,登录验证都在ucenter接口下面完成的,dz或者uchome在登录时,他们会把数据传给ucenter,ucenter进行验证,这个涉及到跨域传输数据,他们是用fsockopen实现的,当然还有其他方式实现跨域传输数据,比如 soap
  最后指出楼主的一个错误,这个不是单点登录,这个是一站式登录,单点登录是指只能在一个PC机登录,实现这个也很简单,用php的自定义session即可实现,更新sessionid

作者: a435911004   发布时间: 2011-11-07

还要多一句嘴,这个问题难道300人,不管你们信不信,反正我是不信的

作者: a435911004   发布时间: 2011-11-07

相关阅读 更多