CAS单点登录问题,认证成功如何自动登录

如果有应用AB两个系统,AB本身都有登录页面,访问A系统将被CAS拦截认证,
认证成功跳转到A应用的login.jsp,本人做的是获取刚才登录的用户名密码,自动填充到
login.jsp页面登录成功,那么请问(1)这样做是否正确?
此时再访问应用B则不需要前往认证中心去认证,那么请问(2)在应用A和B分别拥有数据库的时候,应用B要如何才能成功登录?是否需要把AB数据库进行关联,还是通过设置token跳过B的登录?

3个回答

(1)是对的。A和B应用的做法是一样的。其实用户是需要保持同步的,因为你真正需要登录的数据库,在CAS这里。A和B只是经过CAS拦截,是否有登录标记,你用户详细信息还是在自己的应用,全局登录后,还需要创建局部会话,这样的话,不影响之前的使用,解耦。只是多了一个拦截,确定CAS登录标记。

u011126065
jasondyoung 回复jasondyoung: 不一定及时回复,留个qq,验证问题随意输内容,1145809950
接近 3 年之前 回复
u011126065
jasondyoung 同一个cas认证,只要A登录了,B也就登录了。这才是单点登录的效果。A和B用的数据库同不同没什么关系,有影响的是用户,你的用户在A登录,或者B登录,最先都是要在CAS登录,所以一开始我说用户要同步,同步的方式可以以CAS为准,CAS登录成功,A或B的内部都是先用登录成功的用户,查用户信息,放到session里(也就是做登录),所以A或者B,不存在的用户,可以新增。
接近 3 年之前 回复
qq_36944793
时光老去我们也不散去 回复jasondyoung: 我懂你说的,我现在不知道的是,我的AB应用不是一个数据库,A应用我可以获取用户名密码然后登陆成功,B系统也需要获取用户名,密码的方式登陆吗?如果是这种方式,当前数据库不一致,我该怎么做呢?
接近 3 年之前 回复
u011126065
jasondyoung 回复时光老去我们也不散去: 很平滑的事,同一浏览器登录成功后,访问别的加单点的应用,直接可以访问,无需登录。
接近 3 年之前 回复
u011126065
jasondyoung 回复时光老去我们也不散去: 你明白,每个请求都要进cas拦截器,有登录标记放行,没有就要求登录验证嘛。单点登录跟一般的登录过程是相似的,其实单点就是把登录移了出来,单独做成一个应用,需要单点的应用就加单点拦截器进来。
接近 3 年之前 回复
qq_36944793
时光老去我们也不散去 你好,我做的是cas连接了两个数据库(AB),AB数据库不一致,在A系统认证成功后,那么如何能登录成功B系统的?如何确定AB数据库是一个人?此处应该怎么做?您说用户需要保持同步是什么意思?一个数据库吗?
接近 3 年之前 回复

这种是不是同一账号两处登录的做法?

qq_36944793
时光老去我们也不散去 想做成是一个人,但是账户名不同,cas分别连接两个数据库,如果A系统成功登录了,B系统该如何登陆?
接近 3 年之前 回复

单点登录指在解决单次会话过程中不同应用的登录处理,登录功能应该要独立提取出来,与AB应用处于相同级别,数据库可以考虑优化,将用户登录信息进行同步。

qq_33238919
BlackPigHe 回复时光老去我们也不散去: 你们的ab应用的登录信息还不相同吗,要是相同的话,可以以一个为准,保留登录状态,最后更新数据到b应用。
接近 3 年之前 回复
qq_36944793
时光老去我们也不散去 数据库可以考虑优化,将用户登录信息进行同步?这个怎么完成?AB数据库要进行关联吗?AB应用登陆方式都是获取当前用户名和密码,自动填充进行登录吗?
接近 3 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问