单点登录实现方案设计api
单点登陆涉及 sso 认证中心与众子系统,子系统与 sso 认证中心须要通讯以交换令牌、校验令牌及发起注销请求,于是子系统必须集成 sso 的客户端,sso 认证中心则是 sso 服务端,整个单点登陆过程实质是 sso 客户端与服务端通讯的过程,可用下部署图描述:restful
sso 认证中心与 sso 客户端通讯方式有多种,HttpClient,WebService、rpc、restful
api 均可以,考虑各系统采用B/S架构,这里咱们应用广泛的httpClient便可。架构
拦截子系统未登陆用户请求,跳转至 sso 认证中心设计
接收并存储 sso 认证中心发送的令牌rest
与 SSO Server 通讯,校验令牌的有效性server
创建局部会话blog
拦截用户注销请求,向 sso 认证中心发送注销请求文档
接收 sso 认证中心发出的注销请求,销毁局部会话rpc
验证用户的登陆信息部署
建立全局会话
建立受权令牌
与 SSO Client 通讯发送令牌
校验 SSO Client 令牌有效性
系统注册
接收 SSO Client 注销请求,注销全部会话