单点登录(SSO)
在多个应用系统中,只需要登录一次就可以访问所有相互信任的系统的保护资源,若用户在某个应用系统中注销,所有的应用系统都不能直接访问保护的资源
SSO登录原理
- 访问系统A
- 用户访问系统A,系统A检测用户没有登录,跳转到SSO认证中心,认证中心验证用户是否登录,没有登录进行SSO登录页面。
- 在SSO登录页面提交信息,SSO验证用户信息,正确则创建全局会话,创建授权令牌
- SSO系统带着令牌跳转到最初访问的系统A,系统A拿到令牌后去SSO验证令牌,有效进行下一步
- 注册系统A,然后使用令牌创建用户和系统A之间的局部会话,返回保护的资源
- 用户访问系统B,系统B检测用户未登录,跳转到SSO认证系统,SSO发现用户已经登录,带着授权令牌跳转系统B
- 系统B拿着令牌去SSO认证校验有效性,认证返回有效,注册系统B创建用户与系统B的局部会话,返回保护的资源
SSO注销原理
- 用户向系统发出注销请求,系统根据从用户1拿到的会话
- 从会话拿到令牌、向SSO认证中心发起注销请求。认证中心校验令牌有效、销毁全局会话,同时取出令牌注册地址
- 认证中心向所有注册系统发出注销请求,各系统收到注销请求后销毁局部会话,SSO引导用户跳转到登录页面
- 重点:令牌 全局会话 局部会话