SSO 英文全称 Single Sign On,单点登录。
- SSO 是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。
- 它包括可以将这次主要的登录映射到其他应用中用于同一个用户的登录的机制。
- 它是目前比较流行的企业业务整合的解决方案之一。
CAS 实际上这是一种 SSO 协议,
- 业界还有许多其它 SSO 协议,比如:OpenID、OAuth、SAML、Kerberos 等。
- 当我们第一次访问 OA 系统时,OA 系统会主动向 CAS 发送一个认证请求(authenticate),CAS 重定向到一个登录页面【第一次重定向】。
- 当我们输入了正确的用户名与密码后,CAS 再次重定向到 OA 系统【第二次重定向】,注意这里有两次重定向。
- 登录成功后,在 CAS 中会为该用户生成一张 Ticket(票据),只要不关闭会话(比如说关闭浏览器),以后都可以自由访问该系统,而无需再次登录。
- 在访问某个系统时,需到 CAS 上进行认证。
- 首先检查 Ticket 是否存在,若不存在则重定向到登录页面进行身份认证,当认证通过后,在 CAS 上生成与该用户对应的 Ticket,最后重定向到所要访问的系统上。
- 若 Ticket 已经存在,则直接验证该 Ticket 是否有效,若无效则需要重新登录,若有效则直接访问。