CAS3.0的工作流程:
0.app将用户转发到CAS处, 并将自己的url作为callback参数传给CAS.
1.CAS验证用户成功(authentication)
2.生成用户实体(principal)
3.CAS在TicketRegistry中加入一张新ticket
4.CAS将新加入的这张ticket作为ticket-granting ticket发给用户
5.从该用户处得到一张ticket-granting ticket(其实就是上面发给用户的那张)(validation)
6.拿到这张ticket后,CAS去检查TicketRegistry中是否有这张票对应的注册
7.如果有,那么就在TicketRegistry中加入另一张新的ticket_1.
8.将ticket_1作为service ticket伴随着calback URL将用户转发到app
9.app将刚接受到的service ticket转回CAS,要求确认这张票的真实性.
10.CAS拿到service ticket后检查TicketRegistry中是否对应着有这张票的注册.(validation)
11.如果有返回"yes"和用户netID给app, app象用户提供服务.
关于CAS的定制方法:
大家都知道了,cas其实是一个独立的webapp, 在WEB-INF中的deployerConfigContext.txt文件是所有CAS deployer应该关心的东西,在这里,你可以对CAS的三个核心玩意进行自己的定制:
1.AuthenticationManager
他的任务只有一个"验证操作" - authentication, 可以看看javadaoc来参考一下,上面是写的很明了的.
想要定制自己的AuthenticationManager的话,就动手实现这个接口吧.不过一般来说,CAS自带的实现已经够用啦!
2.credentialsToPrincipalResolvers
这是一个能将credentials转换成principal的转换器的列表, 列表中,主要是些根据不同种类的credential来使用的不同转换类型的转换器,如果你有你自己特有的一种credential的话,那就自己动手做有个能将这个credential转换为principal的转换器吧。制作完成后记得把它添加到这个列表中!现在说说什么是credential,什么是principal,在CAS验证一个credential成功后,需要将一个credential转换为一个principal, 这是符合常理的,credential其实只是表示一个"介绍信",而principal则表示一个已经参与到"工作"中的实体.
3.authenticationHandlers
注意啦,这个authenticationHandler可是所有CAS用户都需要修改的地方啊!authenticationHandler其实就是这个真真正正落实验证业务的"业务员"!CAS自带了一个测试用的username和password的"业务员",这个小同志只是简单的检查你输入的 username(也就是那个netID)和password是不是一对相等的字符串(比如NetID = aa, password = aa),如果是,就判定你登陆成功.可是这么简单的业务当然不能满足你的需求,你的需求也许包括了需要通过检索数据库来比配credential中的 username和password,也可能不是数据库,而是LDAP什么的,总之你得开始制作自己的handler了!credential的种类是很多的,有的基于用户名和密码,有的基于http请求,如果你有你自己的credential的话,就得为它制作有一个handler,来告诉CAS如何处理这种特有的credential。制作完成后记得将它加入这个列表。
分享到:
相关推荐
cas核心业务流程图,cas核心业务流程图,cas核心业务流程图
cas4.1.x集成cas4.1.x集成cas4.1.x集成cas4.1.x集成cas4.1.x集成cas4.1.x集成cas4.1.x集成cas4.1.x集成cas4.1.x集成cas4.1.x集成cas4.1.x集成cas4.1.x集成cas4.1.x集成cas4.1.x集成cas4.1.x集成cas4.1.x集成cas4.1.x...
开源phpCAS程序
cas4.2.7服务端+cas客户端+示例程序+环境搭建之客户端war包 一切跑不起来的程序和走不通的教程都是耍流氓,二话不说,先按照我的步骤把程序跑起来在说吧。 请看博客...
CAS源码分析图,
php cas: php版cas验证程序,支持php 5.
CAS restFul 接口调用 获取票据
CAS登录示意,描述SpringMVC登录工作流中的各种接口及其具体的实现方式。。
H3C CAS 3.0版 H3C CAS 3.0产品培训胶片 H3C CAS-云计算管理平台技术白皮书V2.0 H3C CAS-云计算管理平台 安装指导-5W101-整本手册 H3C CAS-维护手册V2.0 ...H3C CAS虚拟化软件云业务流程演示DEMO
包含cas源码、cas使用说明文档(包含配置信息)、连接数据库所需jar包、cas服务端自定义返回值等
本人亲自试验的cas单点登录配置,服务端用cas-server-3.5.2,客户端用cas-client-3.2.1,里边详细描述了具体每一步的配置过程及遇到的问题及异常,相信你也会碰到的,cas-client-3.2.1中需要修改一个java类的源代码...
CAS 服务端代码,去除https验证模式,拖到tomcat 6.0+就可以用,免配置,cas-server-webapp-3.5.2\WEB-INF\deployerConfigContext.xml下修改数据库验证模板,直接套用模板就好,so easy
cas4.2.7服务端+cas客户端+示例程序+环境搭建之服务端war包 请看博客:http://blog.csdn.net/pucao_cug/article/details/70182968 该war文件是cas4.2.7的服务端的war包。服务端 的war内我已经对WEB-INF文件夹中的web...
CAS实现单点登录(sso)搭建流程
cas多服务器集群及客户端程序 服务器运行run.bat即启动 客户端通过 Client.login() Client.logout() Client.touch() Client.changePassword() 调用 通过telnet可以控制服务器重启(输入R)和停止(输入S)
cas-client3.5单点登录官方客户端程序demo
内含本人实例精华,一个自做PPT,动画解析cas协议,四个客户端client程序实例,一个server端程序,N个文档以及所有xml文件。配套讲解博客地址: [置顶] SSO单点登录系列3:cas-server端配置认证方式实践(数据源+...
H3C CAS应用HA操作指南.pdf
H3C_CAS云业务流程定制操作指导书 H3C_CAS支持硬件NUMA操作指导书 H3C_CAS虚拟机配置调整操作指导书 H3C_CAS虚拟机迁移特性说明书 H3C_CAS虚拟机时间同步操作指导书 H3C_CAS应用HA操作指导书 H3C_CAS虚拟机...
CAS-SSO应用简单介绍,理解有限,仅供参考!谢谢!