求助:J2EE单点登录实现步骤?

请教各位高手,先谢了。

you can use SUN ONE Identify Server 6.0

使用支持SSO的J2EE容器即可,如Jetty/Jboss等。

一台机器上,安装jboss,可以利用容器实现sso,
但是现在有多台机器,每台机器都安装有容器,

如何实现单点登录?? 一台机器的登录,都会影响其他机器

在客户端有使用加密的cookie,或applet

在同一个域中实现SSO比较容易,在不同的域中该如何实现???

多个域当然只能做底层通讯咯,做个SSO SERVER或者用WEB SERVICE也可以

有钱的话,可以买商业软件,比如siteminder

单点登陆也包括不同域的实现。

单点登陆的的概念有侠义和广义之说,侠义的就只限于Web应用之间的SSO,广义的就是指包括客户端,web应用之间都进行SSO。网上很多讨论的都限于WEB应用之间的SSO。
从掌握的技术来看,实现单点登陆有两点是关键,一是有一台身份认证的服务器,二是在客户端能够保存sessionId。在客户端保存sessionId有四种做法:
1)Cookie,这也是web服务器的常用方式
2)URLWrite,将SessionId绑到URL上
3)客户端控件保存
4)证书(比如CA证书)
对于同一个域下的web应用,1,2都能够和好的解决。对于不同域下的应用,如果所有应用都是通过portal进入,2可以解决。对于Web应用和客户端应用都需要SSO的情况,只有3和4能够解决,4比较常见。
其实不管哪种方法出发点都是一样的,提供一个存储sessionId的地方,然所有需要SSO的应用都能够读取。

至于进行身份认认证的服务器端,通常将登陆信息保存在内存或者数据库中。