CAS 单点登陆原理
一、介绍
CAS 是 Central Authentication Service 的缩写 —— 中央认证服务,一种独立开放指令协议,是 Yale 大学发起的一个企业级开源项目,旨在为 Web 应用系统提供一种可靠的 SSO 解决方案。
二、在线地址
三、原理图
四、文字介绍
用户访问A系统,A系统是需要登录的,现在没有登录。跳转到SSO登录系统;
SSO也没有登录,弹出用户登录页;
用户填写用户名、密码,SSO系统进行认证后,将登录状态写入SSO的session,在浏览器中写入SSO域下的Cookie;
SSO系统登录完成后生成一个ST(Service Ticket),然后跳转到A系统,同时将ST作为参数传递给A系统。
A系统拿到ST后,从后台向SSO发送请求,验证ST是否有效;
验证通过后,A系统将登录状态写入session并设置A域下的Cookie;
用户访问B系统,B系统没有登录,跳转到SSO;
SSO已经登录,不需要重新登录认证,SSO生成ST,将ST作为参数传递给B系统
B系统拿到ST,后台访问SSO,验证ST是否有效。
验证成功后,B将登录状态写入session,并在B域下写入Cookie。