当前位置:编程学习 > JAVA >>

cas sso,多个wabapp中的用户信息不同,怎么解决用户映射问题

在使用jasig cas sso中,多个web应用中的用户名,密码不同(暂时不考虑,多个wabapp用户信息统一情况),怎么解决多个应用中用户映射问题?例如,在访问应用wabapp1,时使用1xx用户信息登录,又访问应用webapp2时,怎么知道2xxx已经登录(webapp1中的1xx用户对应wabapp2中的2xx),
已知解决方案:基于用户映射,创建数据库表,记录映射信息如



求具体实现,或者另一种具体实现 cas sso 用户映射  应用 --------------------编程问答-------------------- 研究过一段时间的sso,但研究得不深,也没用过cas,你的映射表的方案我认为是对的。但是,你的图里都搞成这个样子了,还不如统一用户名算了。

坐等楼下大神见解 --------------------编程问答-------------------- --------------------编程问答-------------------- 统一用户信息不大可能,总不能把之前系统存在的用户信息全部干掉吧 --------------------编程问答-------------------- 用一个数据库管理所有用户,然后根据项目不同,同步不同用户信息到各自己数据库吧 --------------------编程问答--------------------
引用 楼主 fengperfect 的回复:
在使用jasig cas sso中,多个web应用中的用户名,密码不同(暂时不考虑,多个wabapp用户信息统一情况),怎么解决多个应用中用户映射问题?例如,在访问应用wabapp1,时使用1xx用户信息登录,又访问应用webapp2时,怎么知道2xxx已经登录(webapp1中的1xx用户对应wabapp2中的2xx),
已知解决方案:基于用户映射,创建数据库表,记录……


同顶,同问。

我想 不可能要把两个应用的所有数据都映射到一张表里面。。可不可以这样,web1下面的A表,web2下面的B表。。。在登录server端的时候能够拿到回传地址,进行判断是哪个应用,就去调用哪个bean,判断数据库用户名和密码如何?

或者你同步两张web1的用户表t1和web2的用户表t2到一张t3表里面。。。server端就去读这个t3表!!但是这又涉及一个更改密码同步的事情。。。 --------------------编程问答-------------------- 额 今天我从网上发现,你定义两个bean 就可以达到,cas会自动先用bean1去查找t1表里的用户名和密码是否正确,不正确去搜bean2里面的配置信息。。。以此类推只要有一个验证通过了就ok了。 --------------------编程问答-------------------- 看下这个帖子 :

http://linliangyi2007.iteye.com/blog/165313

里面有写到怎么用代码去实现楼上所说的一个list验证器。。


我们发现authenticationHandlers属性是一个list,在这个list中可以配置多个AuthenticationHandlers。这些AuthenticationHandlers形成了一个验证器链,所有提交给CAS的Credentials信息将通过这个验证器链的链式过滤,只要这链中有一个验证器通过了对Credentials的验证,就认为这个Credentials是合法的。这样的设计使得我们可以很轻松的整合不同验证体系的已有应用到同一个CAS上,比如:A验证器负责校验alpha系统提交的Credentials,它是基于LDAP服务器的;B验证器负责校验beta系统提交的Credentials,它是一个传统的RDB用户表认证;C验证器负责校验gamma系统提交的基于RSA证书加密的Credentials。3种完全不同的用户身份认证通过配置就可以统一在同一个CAS服务内,很好很强大,不是吗!!  --------------------编程问答-------------------- 楼上的验证器链还是无法解决不同应用中用户名不同的情况吧,假设用户在应用A中的用户名是userA,在应用B中的用户名是userB,首先通过应用A登录,cas返回的用户名是userA,紧接着登录应用B时,由于TGC没有过期,仍然返回用户名userA,这个用户名对应用B来说没有意义 --------------------编程问答-------------------- cas单独占用一个用户表,与其他系统间的数据做好同步不就可以了吗、?我们之前项目就是这么做的!
补充:Java ,  Java EE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,