单点登录 ~ Single Sign On。
单点登录(Single Sign On),简称为 SSO,是比较流行的企业业务整合的解决方案之一。SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。
通过 Cookie 实现单点登录。
Cookie,有时也用其复数形式 Cookies。类型为“小型文本文件”,是某些网站为了辨别用户身份,进行Session跟踪而储存在用户本地终端上的数据(通常经过加密),由用户客户端计算机暂时或永久保存的信息。
Cookie 并不是它的原意“甜饼”的意思,而是一个保存在客户机中的简单的文本文件,这个文件与特定的 Web 文档关联在一起,保存了该客户机访问这个 Web 文档时的信息,当客户机再次访问这个 Web 文档时这些信息可供该文档使用。由于 Cookie 具有可以保存在客户机上的神奇特性,因此它可以帮助我们实现记录用户个人信息的功能,而这一切都不必使用复杂的 CGI 等程序。
举例来说,一个 Web 站点可能会为每一个访问者产生一个唯一的 ID,然后以 Cookie 文件的形式保存在每个用户的机器上。如果使用浏览器访问 Web,会看到所有保存在硬盘上的 Cookie。在这个文件夹里每一个文件都是一个由“名 / 值” 对组成的文本文件,另外还有一个文件保存有所有对应的 Web 站点的信息。在这里的每个 Cookie 文件都是一个简单而又普通的文本文件。透过文件名,就可以看到是哪个 Web 站点在机器上放置了 Cookie(当然站点信息在文件里也有保存)。
在完成登录后,跳转到首页时会向本地系统写入一个 Cookie,Cookie 存储了用户的数据,可以被子系统访问。(域名要相同。eg. jd.com 和 passport.jd.com)。
在其中一个子系统登录,跳转到登录系统,完成登录后向发起登录的子系统写入一个 Cookie,保存用于认证用户是否登录的信息(token),其他的子系统向服务器发送请求时,携带这个 Cookie 完成登录。
Cookie 的域要是所有子系统相同的域,这样所有子系统才能访问到这个 Cookie。
host。
C:\Windows\System32\drivers\etc
127.0.0.1 www.codeshop.com
127.0.0.1 vip.codeshop.com
127.0.0.1 cart.codeshop.com
127.0.0.1 login.codeshop.com
代码。
https://gitee.com/lyfGeek/geek_sso.git