Central Authentication Service
http session 保持机制
1. 用户向服务端发送密码,服务端生成与用户对应的 sessionid
2. 服务端将这个 sessionid 放在 cookie 中,然浏览器保存
3. 用户再次访问这个服务,浏览器会带上原来的 cookie, 服务端根据这个 sessionid 查找对应的用户,认证过程完成。
服务端如何控制浏览器跳转
1. 浏览器在响应头中返回 302 状态码,和一个 location 参数,浏览器会跳转到 location 参数对应的地址
CAS 认证流程
1. sso.com/login?service=http://oa.58.com.cn
2. oa.com?ticket=st-xxx
3. sso.com/serviceValidate?ticket=st-xx&service=x
=> chiqingzhen
4. oa.com => set-cookie st-xxx
5. bsp.com?username=chiqingzhen
=> 认证完成
6. sso.com/logout
7. POST oa.com?ticket=st-xxx
中心认证的作用
- 内部所有系统能够使用同一套密码
- 具体服务不需要持有用户密码
- 中心认证服务能够提供不仅仅用户名密码登录