填写您的项目需求给我们
或者直接拨打 7×12小时一对一咨询电话
175 2108 6175
请填写需求信息,我们会在10分钟内与您取得联系
单点登录是指在同一帐号平台下的多个应用系统中,用户只需登录一次,即可访问所有相互信任的应用系统。本质就是在多个应用系统中共享登录状态。实现单点登录的关键在于,如何让Session ID(或Token)在多个域中共享。
认证中心是一个专门负责处理登录请求的独立的Web服务。用户统一在认证中心进行登录,登录成功后,认证中心记录用户的登录状态,并将 Token 写入 Cookie。这种方式是单点登录的标准做法,虽然相对复杂,但是支持跨域且扩展性好。
将Cookie的domain属性设置为父域的域名(主域名),同时将Cookie的path 属性设置为根路径,这样所有的子域应用就都可以访问到这个Cookie了。不过这要求应用系统的域名需建立在一个共同的主域名之下,如tieba.baidu.com 和map.baidu.com,它们都建立在baidu.com这个主域名之下,那么它们就可以通过这种方式来实现单点登录。这种实现方式比较简单,但不支持跨主域名。
在前后端分离的情况下,我们可以选择将Session ID(或Token)保存到浏览器的LocalStorage中,让前端在每次向后端发送请求时,主动将LocalStorage的数据传递给服务端。这些都是由前端来控制的,后端需要做的仅仅是在用户登录成功后,将Session ID(或Token)放在响应体中传递给前端。在这样的场景下,单点登录完全可以在前端实现。前端拿到 Session ID (或 Token )后,除了将它写入自己的 LocalStorage 中之外,还可以通过特殊手段将它写入多个其他域下的 LocalStorage 中。
来千语创想移动应用开发平台学习更多APP开发知识:app开发,app制作,app开发源码下载,app开发框架,app制作模板等免费获取。千语创想支持APP定制开发,一键网站自动生成app、网站转app、网站封装app,有网站即可生成自己的app。
立即免费在线制作一个APP,新手注册即送开发大礼包
提交app定制需求,免费获取报价和周期:
电脑请点击https://www.qianyuthink.com/?url=/index?uzchannel=500
手机请点击https://www.qianyuthink.com/?url=/m/quickaddcustom
填写您的项目需求给我们
或者直接拨打 7×12小时一对一咨询电话
175 2108 6175
请填写需求信息,我们会在10分钟内与您取得联系
请认真填写需求信息,我们会在10分钟内与您取得联系