CAS(单点登陆)---总结二
返回更多用户信息继...
配置ssoAuth/WEB-INF/view/protocol/casServiceValidationSuccess.jsp下进行配置如完整页面如下:
?
?然后就在客户端返回用户信息,如下:
client jsp 通过这种形式可以获取到全部的用户信息:
?
<%AttributePrincipal principal = (AttributePrincipal) request.getUserPrincipal();Set attributeSet=principal.getAttributes().entrySet();for(Iterator iter=attributeSet.iterator();iter.hasNext();){Map.Entry attribute=(Map.Entry)iter.next();out.println("key:("+attribute.getKey()+")--->"+"value:("+attribute.getValue()+")***");out.println();}%>9,给登录页设置验证码
1,在服务器ssoAuth/login上设置验证码.(login-webflow.xml)
2,自定义的登录页设置验证码(remoteLogin-webflow.xml)
查看这篇文章:http://blog.chinaunix.net/u2/86974/showart_1997021.html
要根据以上两种方案在不同的webflow中设置
?
10,解决如qq上qq邮箱单点登陆,我们用的是spark/openfire
我采用的是httpclient 登陆到ssoAuth/login上进行验证,获取到CASTGC这个cookie 然后在把他设置进要打
开的浏览器上,不过有个bug没有解决就是打开浏览器时cookie是如何写入到浏览器中?
1,要把cookie放在url上,转到一个servelet上进行写入cookie再中转,这个方法有缺陷.得到那个url在任何
浏览器都可以登陆.
2,查看了一下阿里旺旺的实现方式,他采用的是自己在im上写个服务器,然后进行cookie写入
?
1 楼 rain2005 2010-03-29 获取全部用户信息你扩展一下CASfilter不就可以了吗 2 楼 wu_quanyin 2010-03-29 rain2005 写道获取全部用户信息你扩展一下CASfilter不就可以了吗
可以吗?获取用户信息都要到用服务器端取,也就是都要服务器端返回才可取到.这种配置可以动态的配置返回客户端所需要的信息??
3 楼 keanu196492 2010-03-29 学习到了,之前一直觉得单点登录很难做的。 4 楼 baalwolf 2011-10-22 在远程登录的页面上加验证码 这种方式好像不行吧 5 楼 wu_quanyin 2011-10-24 baalwolf 写道在远程登录的页面上加验证码 这种方式好像不行吧
http://hc.gkcity.com/bws/auth/login.jsp 这个就是远程的验证码。。。你提交三四次那个验证码会出来 6 楼 baalwolf 2011-11-03 wu_quanyin 写道baalwolf 写道在远程登录的页面上加验证码 这种方式好像不行吧
http://hc.gkcity.com/bws/auth/login.jsp 这个就是远程的验证码。。。你提交三四次那个验证码会出来
我远程加上验证码 打开客户端的登录页面 从服务端处生成一个验证码 有一个sessionid 。当我输入账号密码提交以后又生成另外一个sessionid 这两个sessionid不一样因此取不到服务端的验证码 7 楼 wu_quanyin 2011-11-03 baalwolf 写道wu_quanyin 写道baalwolf 写道在远程登录的页面上加验证码 这种方式好像不行吧
http://hc.gkcity.com/bws/auth/login.jsp 这个就是远程的验证码。。。你提交三四次那个验证码会出来
我远程加上验证码 打开客户端的登录页面 从服务端处生成一个验证码 有一个sessionid 。当我输入账号密码提交以后又生成另外一个sessionid 这两个sessionid不一样因此取不到服务端的验证码
如果是sessionid问题的话,,你完全可以自己手动设置sessionid,使在请求过程中保持相同