CAS实现原理:
认证流程分析:
1:用户第一次访问受保护的应用。受保护的应用通过其中配置的统一认证过滤器队请求进行过滤,未发现在session中有特定的用户信息,也未发现有ST参数。
2:应用系统将认定用户第一次进入受保护的系统中,重定向到统一认证系统中特定的路径。通常该路径为 http:// 统一认证IP:端口/casserver/login
3:统一认证系统判断用户在统一认证系统中是否登录过。
4:如果没有登录过,则将用户定向到登录界面。
5:用户在登录界面输入用户名和密码等信息,并进行提交。
6:统一认证系统验证用户提交的凭证是否正确,如果正确,生成cookie形式的TGT(ticket grant ticket)和一个ST(service ticket)。并通过重定向跳回到受保护的系统中。并且,将ST作为参数附加在URL后面。
7:进入受保护系统中,请求经由统一认证过滤器进行过滤,发现虽然在session中不存在特定的用户信息,但是存在ST票据。
8:有统一认证客户端持有ST票据通过http请求,发送到统一认证端进行认证票据的有效性。
9:统一认证系统认证票据有效,相应用户信息到受保护系统。
10:受保护系统获得用户信息,在session中设置特定的用户信息。返回用户访问资源。