单点登录(SSO)实战

项目顺利上线,但是需要增加系统模块,但是要分离主系统,又要实现一站式登录,于是搜了好多资料,很多都是用Cookies+Redis+Session或Tomcat+session+nginx方式实现,我两种都尝试了,但是运用到项目选择了第一种,在此做个笔记及和大家分享;

1.运用技术:Cookies+Redis+Session  

2.实现思路:

   2.1  登录系统查询用户信息,登录成功,生成唯一的标识和封装需要的对象;

   2.2  把唯一标识作为(Key)和封装的对象(Value)存储到Redis中并且把key存储到cookies中;

   2.3  成功操作以上步骤后,我们并可以在跳转的项目中取到cookies中存储的(key);

   2.4  取到key以后,我们到redis取到对应的值;

   2.5  取到以后,可以直接转换成你想要的格式即可(即存到session中);

以上就是实现思路,具体代码和操做可以根据项目调整;我是根据目前的项目实现的;


 3. 运用技术:Tomcat+session+nginx

4.实现思路:

      4.1 这个坑很多,首选配置tomcat的content.xml文件;

      4.2 配置之后你就可以复制两份Tomcat,记得改端口号;    

     4.3 其实做到上面你的tomcat就可以实现基本的共享了,就是可以获取到同一个sessionId;

     4.4 但是部署项目之后,你会发现不可以共享,所以这里就需要nginx做桥梁实现;

     4.5 还要注意一点就是tomcat的集群和单项目模式,有点复杂,需要花点力气;

基于本次项目及个人实战,还是选择第一种比较好。勇于分享,才会进步和找到志同道合的人,一直努力的小一!!


©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,338评论 19 139
  • 文/云端一梦 那遥远的北方属于极寒那茫茫千里一双脚印写下两道孤傲的弦每一个脚印一个跳动乐符交错而动奏响一首浪儿的情...
    云端一梦l阅读 1,990评论 52 78
  • 我以为,小猫儿这类宠物大概最不能掩饰自己在吃这件事上的喜好。 比如,当有一盒猫罐头摆在它的眼前,或者哪怕只是它的小...
    胖兔子爱吃肉阅读 336评论 0 1
  • 【日精进打卡458天】 姓名:孙玉生 六项精进第177期学员(队长),271期284期288期295期299期30...
    _玉_生_阅读 336评论 0 2
  • 没有什么是一局游戏解决不了的 假如有,那就两局
    慎言特工阅读 215评论 0 0

友情链接更多精彩内容