日期:2014-05-17  浏览次数:20648 次

请教大家一个关于cas单点登录流程的一个问题
本帖最后由 robrte_kong 于 2013-12-06 16:55:33 编辑
请高手们帮我参考一下一个问题,下面是我理解的单点登录详细的流程,请大家看看有没有什么错误:
1.browser发送请求至server(未登录);
2.server找不到session,找不到st,重定向到cas;
3.cas向browser找不到cookie(tgt),指向登录页面;
4.cas登录成功后生成cookie(tgt)写入browser,并生成st;
5.browser带着st重定向到server(已登录,未验证);
6.server找不到session,找到st,带入url指向cas验证
7.cas根据st向browser获取cookie(tgt),验证成功,失效st,返回用户id;
8.browser发送请求至server(已登录,已验证);
9.server获取session,向browser正常返回资源;

如果以上流程没有问题的话,我想请教一下,
第7步中cas验证成功后返回的用户id是以什么形式返回的?session?cookie? 是返回给browser还是返回给了server? 
还有第9步中的session是由cas创建的还是由server创建的? 

最好能把创建session的过程按顺序补充到我的步骤里面,谢谢了!

------解决方案--------------------

SSO单点登录系列2:cas客户端和cas服务端交互原理动画图解,cas协议终极分析