Cas认证原理

1.cas相当于一个web应用,应配置在一台电脑上,作为cas认证服务器。

首先有三个URL:
登录URL:cas的登录认证url(假设为:https://cas/login
验证URL:cas的验证ticket(票据)url
登出URL:cas的登出url(假设为:https://cas/logout

1、浏览器首先访问页面(假设为:https://myweb/weblogin 并假设登录后首页为https://myweb/index.jsp),fileter过滤器首先会对cookie验证,如果不成功跳转到cas登录认证url

备注1:
其中这个url会是这样的,https://cas/login?service=https://myweb/index.jsp,会在跳转到cas认证界面,如果认证成功,应该跳到那个界面呢?登录成功当然是跳到用户首页,所以后面这个地址参数,就是密码输对后跳到业务系统内部首页的地址,这个地址是在web.xml里面配置cas拦截器配置的参数,如果有多个业务系统,那么每个业务系统的web.xml里面都会有配置这个参数,表示认证成功后将跳转到该业务系统的首页。

备注2:
当然出于安全性的考虑,可以把service后面的参数进行加密,跳转前进行解密,然后跳转。

2、cas进行认证,但是认证这个功能其实不是cas服务器负责的,通常是LDAP。

3、认证成功后,首先会生成一个随机字符串ticket(票据),只能使用一次,然后cas将请求重定向到原来的url,但是会带上ticket,https://myweb/weblogin?ticket=gdfsdfgKfse

4、收到ticket后,应用程序需要调用验证url进行验证,返回一个NetID给应用程序以及返回一个特殊cookie(ticket-granting cookie:关闭浏览器后cookie自动过期)给浏览器。
备注1 casUrl验证过程:
cas通过内部的数据库对其进行判断。如果判断是有效性,则返回一个NetID给应用程序,随后cas将ticket作废,返回一个cookie给浏览器)。

5、以后访问其它第三方业务系统,就通过cookie进行,如果关闭浏览器,那么cookie就过期,同理,cas的登出url https://cas/logout也是设置cookie过期,或者删除cookie。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值