概念:
单点登录(Single Sign-On,SSO)是指在多套系统并存的环境下,用户只需要登录一次即可访问其他系统。
特点:
- 单点登录,多点同时登录
- 单点注销,多点同时注销
- 单点切换用户,多点同时切换
- 单点登录过期,多点同时过期
应用场景:
- 部门内部SSO(通过自定义策略(custom protocol)实现的单点登录,没有参照协议或规范安全性不高)
- 企业级SSO(使用成熟的SSO框架或自主搭建完整的SSO架构)
- 第三方登录(通常使用Openid,Passport,Oauth等,个人认为第三方登录只是一种统一身份认证,不是严格意义的单点登录)
两种架构:
- 集中验证模式:登录统一交由验证服务器,各应用系统不提供登录界面。
- 多点验证模式:应用系统提供各自的登录界面,登录一套系统后,其他系统无需登录即可通过身份认证。
常见技术实现:
1.CAS(Central Authentication Service)
CAS 是 Yale 大学发起的一个开源项目,旨在为 Web 应用系统提供一种可靠的单点登录方法。
CAS 在 2004 年 12 月正式成为 JA-SIG 的一个项目,是开源的企业级