关于cookie、session和单点登录、登出的问题

夏远舟 2013-05-21 09:54:03
用网上一个很常见的模板做了单点登陆 大概是这样的:

一共有4个站点,其中一个是负责中央身份认证 其他三个分别是不同的应用系统。

在初次访问当中一个应用系统时,先跳转到中央认证的那个站点中去(登陆页面、操作都在这个站点里),登陆成功后,用GUID类生成一个全局标识码,用Cookie来存储这个码,这个cookie就当做令牌了,然后生成凭证(凭证用来判断能不能访问这个页面,有凭证才能访问,下载的那个模板里用一个object对象来存,然后把令牌和凭证的信息存到DataTable里)。

从这里开始就不懂了 这个cookie是存在浏览器的吧?那使用同一个浏览器的其他三个应用系统是否能够访问到这个cookie呢???

我下载的这个模板里,登陆成功后跳回应用系统中,应用系统还要再跳回认证站点去拿cookie值,拿到cookie值再到认证站点去提取凭证,认证站点返回凭证值,把凭证放到session对象里面,然后就允许访问站点的内容了。

这里的session的作用域又是怎样呢?其他的三个应用系统是能访问到这个session的不???

如果不能访问到,而是分别各自生产的话,我要做单点登出又应该怎样删除其他站点里的session??


这些问题搞不清 但对我来说又很重要 我的分不多 麻烦各位大神尽量解答 谢谢!!!!!
...全文
544 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
ccdd4ever 2015-07-01
  • 打赏
  • 举报
回复
session作用只限于一个tomcat中,所以如果用分布式的tomcat服务器就得用sso把令牌保存到cookie中而不是session中
ltcszk 2013-05-23
  • 打赏
  • 举报
回复
既然cookie里有凭据了,把session当cathe就行了,没有session就根据凭据生成,有就直接取
夏远舟 2013-05-23
  • 打赏
  • 举报
回复
怎么沉了各位体谅体谅别嫌弃 我虽然懂的少但至少诚恳啊实在搞不懂session的问题啊~
夏远舟 2013-05-22
  • 打赏
  • 举报
回复
引用 1 楼 a346729576 的回复:
a.csdn.net b.csdn.net c.csdn.net 你把cookie的域设置成.csdn.net 这三个站点就都能访问了
我想起来代码里面 把域单设成passport.com(就是那个中心认证的站点)了。 那session呢?是三个站点都共用的一个session 还是各自有各自的session呢?
夏远舟 2013-05-22
  • 打赏
  • 举报
回复
引用 5 楼 liuchaolin 的回复:
http://blog.sina.com.cn/s/blog_4c856316010008xm.html 慢慢看吧
谢谢你~ 这回cookie的是看懂了 那session呢?三个站点用的是同一个session还是不同的三个同名的session呢?
md5e 2013-05-22
  • 打赏
  • 举报
回复
http://blog.sina.com.cn/s/blog_4c856316010008xm.html 慢慢看吧
md5e 2013-05-22
  • 打赏
  • 举报
回复
http://zhidao.baidu.com/question/378815819.html
md5e 2013-05-22
  • 打赏
  • 举报
回复
cookie是有域名称限制的 http://blog.csdn.net/lisky119/article/details/2540843
夜色镇歌 2013-05-21
  • 打赏
  • 举报
回复
a.csdn.net b.csdn.net c.csdn.net 你把cookie的域设置成.csdn.net 这三个站点就都能访问了

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧