简单的SSO方案 COOKIE实现

SSO是单点登录的意思.我相信各位都应该知道使用SSO有什么好处.那废话就不多说了.直接来说一下我的思路吧.

 

我的思路是采用COOKIE来实现,(COOKIE的有一定的限制性,暂不评论).如果采用COOKIE的话,那首要解决的即是COOKIE的跨域问题.可关键是我们无法操作不同域的COOKIE.如果真能操作的话,那就也没有安全性可言了.只能曲线救国了.那么我们可在登录一个网站的时候,主动的要求其他的网站发出其COOKIE. 画了个图,大家看一下

 

在第三步时,即使用动态追加脚本块,或使用IMG对象来实现向另一个网站请求,使该网站有机会能写入自己的COOKIE.

 

脚本块的话,如下

    var s=document.createElement("script");
        s.src="http://www.site2.com/a.aspx";
        document.getElementsByTagName( "HEAD")[0].appendChild(s);

 

如使用img 则更简单<img src='http://www.site2.com/a.aspx'>

 

在a.aspx中我们则可以写回相应的COOKIE,以便以后访问时,能读取到相应的COOKIE.

 

在认证服务器上,不仅是认证工作,同样还要维护相应的联盟成员站点的信息.

 

这个方案相对来说比较的简单,安全方面暂无考虑.当然我想在内网使用这种方案的话,还是可性的,只要做少量的预防性工作即可.同时对于原有应用的改动量也不是很大.

 

实验代码下载,https://p-blog.csdn.net/images/p_blog_csdn_net/greystar/EntryImages/20080807/SSO2.rar.jpg

下载后请将改一下文件名.本来是rar的,找不到上传文件的地方,就改了一下后缀名.

 

 

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 11
    评论
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值