SSO出现原因
Web应用系统的演化总是从简单到复杂,从单功能到多功能模块再到多子系统方向发展。
譬如用户的账号管理,用户应该有一个统一账号,不应该让用户在每个子系统分别注册、分别登录、再分别登出。系统的复杂性不应该让用户承担。
单Web应用登录
由于http是无状态协议,这样每一次客户端http请求,都要求用户登录一次。为了解决这个问题,出现了会话跟踪。常见的会话跟踪:cookie,URL重写,隐藏表单域等。httpSession是基于Cookie和url 重写之上的,web容器自动实现了会话跟踪。
Cookie
Cookie 是由服务器创建,保存在客户端(以文本的形式),每次请求浏览器会将cookie放到httpResquest的Head中。
Session
Session 是由服务器创建,信息保存在服务器端;服务端返回SessionId给客户端,客户端请求服务器,浏览器会把SessionId放到request中。