当用户第一次访问系统1的时候,因为还没有登录,会被引导到认证系统中进行登录,根据用户提供的登录信息,认证系统进行身份检验,如果通过检验,就会返回给用户一个凭据--ticket;然而当用户访问别的应用的时候,就会讲ticket带上,作为自己的认证凭据,应用系统接收到这个应用凭据之后会把ticket送到认证系统中进行检验,检查ticket的合法性。如果通过校验,那么用户就可以在不用再次登录的情况下访问应用系统2和应用系统3了;
一、共享Session
共享Session可谓是实现单点登录最直接、最简单的方式。将用户认证信息保存于Session中,即以Session内存储的值为用户凭证,这在单个站点内使用是很正常也很容易实现的,而在用户验证、用户信息管理与业务应用分离的场景下即会遇到单点登录的问题,在应用体系简单,子系统很少的情况下,可以考虑采用Session共享的方法来处理这个问题。
这个架构我使用了基于Redis的Session共享方案。将Session存储于Redis上,然后将整个系统的全局Cook
单点登录
最新推荐文章于 2024-06-13 10:15:54 发布