要做单点登陆的中心系统,子系统已经存在,我猜使用子系统建立web service ,开放登陆的接口,
然后中心每次有人登陆的时候,就调用所有的子系统的登陆,这样就可以创建好多个session了,
一个人跳到哪去都是登陆的状态。这样可行么?是这样做的么,一般?大家多帮忙

解决方案 »

  1.   

    “然后中心每次有人登陆的时候,就调用所有的子系统的登陆”, 单点登录的话就不应该调用所有的子系统的登陆了。 在单一的点登录以后获得一个token,拿到它以后就可以去访问你所说的子系统了。其实就是在soap header里塞进去点东西来代表用户的身份。 有好多现成的框架都是来干这个的,具体看你用什么开发的系统,上网一搜就有了。你要是对单点登陆的意思不太理解可以去看看kerberos, 很早期的一个单点登陆的协议。
      

  2.   

    LZ看看这里很详细了而且有代码
    http://www.blogjava.net/Jack2007/archive/2008/04/10/191795.htmlWeb-SSO的样例是由三个标准Web应用组成,压缩成三个zip文件,从http://gceclub.sun.com.cn/wangyu/web-sso/中下载。其中SSOAuth(http://gceclub.sun.com.cn/wangyu/web-sso/SSOAuth.zip)是身份认证服务;SSOWebDemo1(http://gceclub.sun.com.cn/wangyu/web-sso/SSOWebDemo1.zip)和SSOWebDemo2(http://gceclub.sun.com.cn/wangyu/web-sso/SSOWebDemo2.zip) 是两个用来演示单点登录的Web应用。这三个Web应用之所以没有打成war包,是因为它们不能直接部署,根据读者的部署环境需要作出小小的修改。样例部 署和运行的环境有一定的要求,需要符合Servlet2.3以上标准的J2EE容器才能运行(例如Tomcat5,Sun Application Server 8, Jboss 4等)。另外,身份认证服务需要JDK1.5的运行环境。之所以要用JDK1.5是因为笔者使用了一个线程安全的高性能的Java集合类 “ConcurrentMap”,只有在JDK1.5中才有。 
      

  3.   

    cl55 我的确是连概念都没搞清楚:p
     xnjnmn 前辈
    太感谢你了,你给的资料非常有用,我正在看