1,优势:
每个用户只需记录一个用户名密码,登录一个平台后即可实现各应用系统的透明跳转,而且实行统一的用户信息管理系统,系统管理员只需维护一套人员信息,更改信息通过平台接口同步更新至各个应用系统,实现人员系统单次维护全公司同步变更,大大提高工作效率。
2,原理
cas client:即各种web应用,比如:oa系统
用户访问oa系统,oa系统经过配置,会重定向到cas server用户认证,认证通过后会返回一个ticket给client,client URL带着这个ticket到cas server验证,验证通过即oa系统登陆成功。cas server验证通过该用户后,cas server会在客户端创建一个Cookie,注意,是在用户的客户端,而不是服务端创建一个Cookie。这个Cookie是一个加密的Cookie,其中保存了用户登录的信息,如果用户此时希望进入其他Web应用程序,则安装在这些应用程序中的单点登录客户端,首先仍然会重定向到CAS服务器。不过此时CAS服务器不再要求用户输入用户名和密码,而是首先自动寻找Cookie,根据Cookie中保存的信息,进行登录。登录之后,CAS重定向回到用户的应用程序。这样,就不再需要用户继续输入用户名和密码,从而实现了单点登录。
3,构建cas应用
一个原生的cas单点登录服务器就被搭建起来了,当然我们实际运用中这点功能是不能够满足的,如何定制化登录界面?如何修改认证方式?客户端应用如何集成到cas上?
构建CAS源码应用,自定义认证方式等等。关注https://my.oschina.net/wangzhen9005/blog/665926。
4,st的生成过程
用户登录web应用,web应用重定向到cas server,用户认证通过,在本地浏览器产生一个cookie(即TGC),同时生成一个TGT对象,同时cas根据TGT签发一个ST。