江西建设监理协会网站,千万别自学软件编程,网站备案可以更改吗,小蘑菇网站建设下载系统间账号认证系统同步方案 基础原理#xff1a;(基于Web) 浏览器在个请求传递cookie到服务器#xff0c;服务器对cookie增删改查的操作, 写入JSessionId实现与服务器Session的绑定#xff0c;保持会话 单机情况下#xff1a;一个域名#xff0c;对应一个cookie#xff…系统间账号认证系统同步方案 基础原理(基于Web) 浏览器在个请求传递cookie到服务器服务器对cookie增删改查的操作, 写入JSessionId实现与服务器Session的绑定保持会话 单机情况下一个域名对应一个cookie对应一个JsessionId与一个服务器Session会话 基于原理解决方案需要解决两个问题 1. Cookie在不同域名系统间的传递问题 2. 服务器Session在不同服务器 问题1的解决方案 cookie中的数据有三个属性domain、path、name。cookie新增和删除没有修改选项name相同domain以及path不同当做不同的cookie来处理 又衍生出了两种情况 在同一个域名以及子域名下面的处理方式使用domain绑定顶级域名 在不同域名下面的系统的处理方式通过sso的模式传递ticket验证ticket获取用户信息生成自己的sessionId到cookie中 问题2的解决方案 部署在同一台服务器使用堆外内存磁盘缓存来实现ehcache 部署在不同服务器使用redis、memcache缓存来实现 实现方式 框架spring-session、shiro-SessionManager模块、使用redis客户端 自研修改实现JavaEE关于Session的增删改查实现分布式回话 上述问题比较麻烦的就是不同域名下系统的解决方案单点登录 底层方案 JavaEE接入Cas的客户端和服务端实现手动实现单点登录 使用框架 spring-cas shiro整合cas 其他方式 零侵入整合业务系统https://www.cnblogs.com/baibaomen/p/sso.html Tomcat容器其实实现了对应的Cookie的配置但是过于依赖容器在代码中实现而非在运维层面上实现是更好的选择。 参考资料 单点登录时序图https://www.cnblogs.com/baibaomen/p/sso-sequence-chart.html github单点登录资料https://github.com/baibaomen/BaibaomenSsoLesson 域名之间的cookie共享情况https://segmentfault.com/a/1190000006932934?utm_sourcetag-newest JavaEE基础教程书籍《JavaWeb整合开发王者归来》熟悉JavaEE基本对象以及基础流程以及原理容器只是基础规范的实现转载于:https://www.cnblogs.com/fly-piglet/p/11059300.html