Mason' Blog

Mason.Net

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

SSO是门户的基础,我们公司现在正在筹备这方面的项目

原本是打算自己做,后来和BEA和SUN做过技术交流以后,决定用SUN的SUN ONE SERVER来做

其实SSO的基本原理很简单,我们在考虑自己实现的时候,遇到一些技术难题,后来和BEA、SUN做过交流后才证实了我们的一些想法:

SSO最简单,最直接的实现方法是基于COOKIE,性能最高
基于COOKIE最大的难点在于跨域
SSO的核心在于统一用户认证,而这个从实现层面上就可以看作一个认证服务器,也真是SUN公司所推崇的IDENTITY SERVER,所以的登录、认证请求都在这里完成,然后分发到相应应用
而他们解决COOKIE跨域的方法也是基于这个IDENTITY SERVER的,用户登陆后可以在各个他所访问的域内写COOKIE,而这些COOKIE都是IDENTITY SERVER所可以认证的,由此做到松散的集群制。

如果大家有兴趣自己实现,也可以基于这个实现,无非是在COOKIE中建立只有自己的IDENTITY SERVER可认证的串,通过重定向方式到IDENTITY SERVER验证,然后返回认证结果,操作功能,由于COOKIE内容的一致性致使跨域成为可能

当然SUN所做的远比我说说的复杂,比如每个认证的域都需安装它所提供的认证软件等等,不过基本实现就是这样的

SSO现在是做企业应用的基础,大的运营商在理性化建设的基础上都想整合原有应用,所以门户是他们最关心的,而SSO是第一步

希望大家批评指正 
-----------------------------------------------------------

简单来说就是建立一个所有域都可以任意读的cookie,然后在cookie内容加密和格式上做文章

posted on 2005-11-28 23:30  Mason  阅读(666)  评论(0编辑  收藏  举报