首页 > 编程知识 正文

sharepoint网页制作教程,分布式session共享方案

时间:2023-05-03 14:50:00 阅读:31996 作者:3154

单点登录对我们来说不熟悉。 在大型系统中,使用单点登录可以减少用户的麻烦。 就百度而言,百度下面有很多子系统。 百度的经验、百度知道的事情、百度文库等等。 我想如果我们在使用这些系统的时候,任何系统都需要我们输入用户名和密码登录一次,用户体验一定会直线下降。 当然,个人博客这样的系统不能使用单点登录。

如果,我们的系统很庞大,但就是这个系统,没有子系统。 此时也不需要单点登录。 在此,我们不讨论多个主机的负载平衡会话共享问题。

同一域名下的不同网站如何认证? 如果两个站点可以共享同一认证Cookie,则使用同一用户登录多个站点将变得更容易。 根据HTTP协议,两个站点可以共享Cookie。 假设这两个网站在同一个域名下。 在这种情况下,它是属于同一域的cookie。 浏览器中本地存在Cookie及其所属的域。 当冷蜗牛访问域下的任何子站点时,浏览器会将这些Cookie发送到站点系统。

假设两个站点www.on mpw.com/site1www.on mpw.com/site 2共享相同的主机地址,并且两者在同一域名下。 我刚登录www.onmpw.com/site1,浏览器中有来自www.onmpw.com/site1的身份证cookie。 当冷蜗牛单击site1下的任何子页面时,这些cookie将发送到site1。 这个很容易理解。 同样,当冷蜗牛请求www.onmpw.com/site2时,这些cookie同样会随请求发送到site2下的任何页面。

由于两者的session ID相同,所以这些session信息保存在相同的位置即可。 同一个域,但不同的子域如何进行单点登录? 假设两个站点共享同一个域on mpw.com:sub1. on mpw.com sub2. on mpw.com,该站点以以下域名放置: 默认情况下,浏览器将发送与cookie所属域对应的主机。 也就是说,来自sub1.onmpw.com的cookie默认所属的域是. sub1.onmpw.com。 因此,sub2.onmpw.com不会检索属于sub1.onmpw.com的任何cookie信息。

因为它们位于不同的主机上,两者的子域也不同。 在这种情况下,可以将两者的cookie信息设置为位于同一域中。

(1)登录sub1.onmpw.com系统

)2)登录成功后,设置cookie消息。 需要注意的是,您可以将用户名和密码保存到cookie中,但在设置时必须将此cookie所属的域设置为顶级域. onmpw.com。 您可以在此使用setcookie函数。 此函数的第四个参数用于设置cookie中所述的域。 cookie.setdomain('.onmpw.com);

)3)访问sub2.onmpw.com系统时,浏览器会将cookie消息username和password附加到请求并发送到sub2.onmpw.com系统。 在这种情况下,系统首先检查session是否已登录,如果没有登录,则验证cookie的username和password以实现自动登录。

)4)成功登录sub2.onmpw.com后,写session消息。 后面的验证用自己的session信息验证就可以了。

当然,先登录sub2.onmpw.com的方法也是一样的。 经过以上步骤,可以实现不同2级域名的单点登录。 但是,这里的问题是,在sub1系统退出后,自己的session信息和所属域可以清除. onmpw.com上的cookie的信息。 无法清除sub2系统的session信息。 那个sub2还处于登录状态。 也就是说,可以单点登录,但不能同时注销。 原因是,您只是将用户名和密码cookie设置为通过setDomain共享cookie。 但是两者的sessionId不同。 此会话id还在浏览器中存储为cookie,但属于不是. onmpw.com的域。 也就是说,两者的sessionId不同。

解决方案:将第一次登录生成的JSESSIONID放入通过setDomain共享的自定义cookie中。 然后,在访问辅助域名时,检索自定义cookie的值并将其放入JSESSIONID的cookie值中。 请参阅cookiec=newcookie(「jsessionid”,session.getId ) ); c.setdomain(「ABC.com”); resp.addCookie; 要点:可以共享不同子域的Cookie。 Session必须在子域之间将JESSIONID写入共享Cookie。 (JSEESIONID是其自身的Cookie,但由于是tomcat创建的,因此他的域属性与您当前工作站的域名完全匹配

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。