java-关于CAS单点登录的用户认证(转)

原文:https://yq.aliyun.com/wenzhang/show_25905?spm=a2c4e.11155472.blogcont.7.45e9425dbj3ZPz
关于CAS单点登录的用户认证

现有多个系统web1,web2,web3...
用户张三,在web1里用户名密码是user1/123,在web2里用户名密码是zhangsan/456,在web3里用户名密码是abc/789……
这些多个系统的用户名密码存放在不同数据库中,但是每个数据库里都有“工号”这个字段,且为必填项。
现在将这多个系统用CAS做单点登录,这多个数据库如何通过“工号”这个字段统一?
刚看到的一个思路:
单对多模式;一个用户使用不同凭证登录不同系统;| 给sina一个凭证,sina用户就可以登录本系统了;| 然后基于传递过来的用户信息,创建一个本系统用户,保存相应凭证;下次就可以再次直接使用了;
这个具体怎么实现?

解决方案

1.首先你要实现一个过滤器,功能是检测登录状态,这个过滤器最好打成jar包,然后你所有受信任的项目都要导入这个过滤器,
2.过滤器的内容是:检查登录状态,若已经登录则直接跳转到请求画面,没有登录则调到cas认证中心进行认证。
3.何为cas认证中心:你需要利用Cookie映射token(密匙)的方式在内存中存储登录状态的信息
4.cas认证中心为一个独立的项目,它能够认证不同项目的登录请求,即不管是哪个项目的账户登录,登陆成功,生成token,返回Cookie,
https://blog.csdn.net/sky_yangwang/article/details/8855710?spm=a2c4e.11155472.blogcont.6.48612abbDH8q9G

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值