多个webapp间sso(转)

1、基于domain的方案。
应用A在a.domain.com,B在b.domain.com,如果设cookie的时候,设domain为domain.com,那在A、B上都可以访问到这个cookie了。(cookie的domain、path、port、version、secure相同)。

2、基于gateway的方案。
实际部署的时候,对所有应用的请求,都要通过一个gateway转发一下,比如用一个L4的交换机顶在前面。

3、cas这类,基于tooken传递的方案。
一台认证服务器(假定为AUTH),有两个应用A、B,分别部署在不同的服务器上。

1)用户访问A,A应用无法找到用户的身份信息,使用redirect方法将用户引导至http://Auth/login?service=http://A/path。

2)AUTH 显示登录界面,用户输入登录信息,认证通过。
AUTH产生一个cookie(这个cookie只有AUTH上才能读到),使用redirect方法将用户引导回http://A/path?token=xxxxx(在有的解决方案上,这个token是通过一定编码算法的Account信息)

3)A读取token=xxxx的信息,获取用户身份。

4)用户访问B。B未找到用户的身份信息,redirect至http://AUTH/login?service=http://B/path

5)AUTH读cookie获取用户身份,然后redirect回http://B/path?token=xxxx

6)B读取token=xxxx信息,获得用户身份信息

TOKEN方案是比较简单、容易实现的一种sso方案,实际运用的话,由于AUTH要应付所有的认证请求,并发量大的话,最好对AUTH做LBS。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值