天心无缺 2021-07-27 10:43 采纳率: 0%
浏览 32

cas登陆时无法取得用户名的问题

用cas客户端A登陆,跳转到服务端首页,然后登陆对应的账号密码,进入客户端A,客户端A里面有客户端B的链接,点击客户端A里面的客户端B的链接,可以直接进入客户端B的首页,回到原来的客户端A的页面,退出,换另外的账号重新登陆,然后点击客户端B的链接,登陆到了客户端B,但是客户端B的账号没有改变,我这边是用request.getRemoteUser();取的传过来的用户名的,但是用户名一直没有改变,不知道这个值有什么问题,
注:客户端A退出时,对应的cas未退出

  • 写回答

1条回答 默认 最新

  • ghostp 2021-07-27 11:52
    关注

    客户端A退出时,对应的cas未退出 你这个是重点,因为你的CAS未退出,对客户端B来说,就是上次登录的用户未退出,你的这个是客户端A的域名跟客户端B的域名不一样,然后保存客户端的cookie是放到对应客户端域名下面的,所以,客户端B通过自己域名下面的cookie到客户端B的session中能够取到对应第一次登录用户信息,故展示的是第一次登录的用户信息。
    所以使用CAS的时候,退出最好是CAS全部登出,不要知识本身客户端登出而产生安全问题

    评论

报告相同问题?

问题事件

  • 创建了问题 7月27日

悬赏问题

  • ¥15 速帮,学校需要在外上班没空
  • ¥15 人在外地出差,速帮一点点
  • ¥15 如何使用canvas在图片上进行如下的标注,以下代码不起作用,如何修改
  • ¥15 Windows 系统cmd后提示“加载用户设置时遇到错误”
  • ¥50 vue router 动态路由问题
  • ¥15 关于#.net#的问题:End Function
  • ¥15 无法import pycausal
  • ¥15 VS2022创建MVC framework提示:预安装的程序包具有对缺少的注册表值的引用
  • ¥15 weditor无法连接模拟器Local server not started, start with?
  • ¥20 6-3 String类定义