论坛首页 Java企业应用论坛

SSO技术应用再讨论

浏览 7357 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-06-16  

近日学习研究了SSO,有很多疑问想与大家交流。之前发了帖效果不佳,疑惑依然存在。今日将自创的SSO应用方案整理出来,算是抛砖引玉,希望通过交流分析出最佳的应用模式,互进共勉。

目标:整合现有邮件系统、论坛系统、博客系统,实现单点登陆。

面临问题:跨域;应用系统由不同的开发语言编写(如jsp、asp、php、cgi)。

整合要求:考虑历史数据的兼容性、完整性;尽量使应用系统的客户化改造最小、涉及的影响面最小;考虑未来可能使用的系统,预留接口。

方案:整合过程中需新开发统一认证系统,负责用户信息管理。用户信息注册由统一认证系统完成,邮件系统、论坛系统、博客系统中的用户ID与统一认证系统中的用户ID保持一致。即统一认证系统每产生一个用户ID邮件系统、论坛系统、博客系统也要产生相应的用户ID。

采用CAS实现统一验证,用户信息同步应用CAS的Proxy模式。这里重点阐述用户信息同步策略。同步过程主要有两方面,如下:
1、注册新用户
统一认证系统进行用户ID唯一性检查,检查过程依赖于邮件系统、论坛系统、博客系统获取信息,只有全部通过唯一性检查方可注册。
2、登陆应用系统
a、统一认证系统进行身份验证后重定向到应用系统。
b、应用系统获取用户ID,检测本地是否存在该用户ID,如不存在则创建,然后执行登陆操作。

   发表时间:2007-06-18  
请谁有这方面的经验介绍一下,谢谢。
0 请登录后投票
   发表时间:2007-06-20  
偶最近也遇到这样的问题,不知道兄弟解决了没有?
0 请登录后投票
   发表时间:2007-06-20  
为什么ID邮件系统、论坛系统、博客系统也要产生相应的用户ID
这样同步起来是不是很麻烦,Oracle OIM是一套完整的用户身份验证解决方案,把用户信息存放在OID中,其SSO 是采用在Apache上加上一个mod_osso来实现的,它可以把用户的信息存放在request header中,每次请求都通过Apache转发。
0 请登录后投票
   发表时间:2007-06-20  
Ivan Li 写道
为什么ID邮件系统、论坛系统、博客系统也要产生相应的用户ID
这样同步起来是不是很麻烦,Oracle OIM是一套完整的用户身份验证解决方案,把用户信息存放在OID中,其SSO 是采用在Apache上加上一个mod_osso来实现的,它可以把用户的信息存放在request header中,每次请求都通过Apache转发。


Apache转发过去的还是OID中的用户信息,“邮件系统、论坛系统、博客系统”如果本身预先没有这些用户,又有什么用呢?
0 请登录后投票
   发表时间:2007-06-20  
myy 写道
Ivan Li 写道
为什么ID邮件系统、论坛系统、博客系统也要产生相应的用户ID
这样同步起来是不是很麻烦,Oracle OIM是一套完整的用户身份验证解决方案,把用户信息存放在OID中,其SSO 是采用在Apache上加上一个mod_osso来实现的,它可以把用户的信息存放在request header中,每次请求都通过Apache转发。


Apache转发过去的还是OID中的用户信息,“邮件系统、论坛系统、博客系统”如果本身预先没有这些用户,又有什么用呢?
同意5楼的说法。邮件系统、论坛系统、博客系统有各自的验证模块,按Ivan Li 的意思需屏蔽应用系统的验证逻辑,SSO后直接重定向到具体应用系统的主页面。然而这样会带来新的问题,假如应用系统有各自的授权模块,因为SSO用户在应用系统中并不存在,那么授权功能必须重写,即针对统一用户进行分模块授权。如果应用系统采用不同的语言开发,改造的难度会较大且存在风险。考虑到这点,希望尽量能使用原系统功能,所以才提出用户信息同步的想法。其实这个话题应该算老话题了(05年的帖子就有很多人讨论了),有提出用LDAP实现的,本人对LDAP技术并不熟悉,不敢妄下结论,但感觉LDAP更适合于类似OA系统的整合,即系统用户固定,而不像论坛、博客等开放性系统。现在还很迷茫,欢迎大家一同交流。
0 请登录后投票
   发表时间:2007-06-20  
limogogogo 写道
myy 写道
Ivan Li 写道
为什么ID邮件系统、论坛系统、博客系统也要产生相应的用户ID
这样同步起来是不是很麻烦,Oracle OIM是一套完整的用户身份验证解决方案,把用户信息存放在OID中,其SSO 是采用在Apache上加上一个mod_osso来实现的,它可以把用户的信息存放在request header中,每次请求都通过Apache转发。


Apache转发过去的还是OID中的用户信息,“邮件系统、论坛系统、博客系统”如果本身预先没有这些用户,又有什么用呢?
同意5楼的说法。邮件系统、论坛系统、博客系统有各自的验证模块,按Ivan Li 的意思需屏蔽应用系统的验证逻辑,SSO后直接重定向到具体应用系统的主页面。然而这样会带来新的问题,假如应用系统有各自的授权模块,因为SSO用户在应用系统中并不存在,那么授权功能必须重写,即针对统一用户进行分模块授权。如果应用系统采用不同的语言开发,改造的难度会较大且存在风险。考虑到这点,希望尽量能使用原系统功能,所以才提出用户信息同步的想法。其实这个话题应该算老话题了(05年的帖子就有很多人讨论了),有提出用LDAP实现的,本人对LDAP技术并不熟悉,不敢妄下结论,但感觉LDAP更适合于类似OA系统的整合,即系统用户固定,而不像论坛、博客等开放性系统。现在还很迷茫,欢迎大家一同交流。
同意5楼的说法。邮件系统、论坛系统、博客系统有各自的验证模块,按Ivan Li 的意思需屏蔽应用系统的验证逻辑,SSO后直接重定向到具体应用系统的主页面。然而这样会带来新的问题,假如应用系统有各自的授权模块,因为SSO用户在应用系统中并不存在,那么授权功能必须重写,即针对统一用户进行分模块授权。如果应用系统采用不同的语言开发,改造的难度会较大且存在风险。考虑到这点,希望尽量能使用原系统功能,所以才提出用户信息同步的想法。其实这个话题应该算老话题了(05年的帖子就有很多人讨论了),有提出用LDAP实现的,本人对LDAP技术并不熟悉,不敢妄下结论,但感觉LDAP更适合于类似OA系统的整合,即系统用户固定,而不像论坛、博客等开放性系统。现在还很迷茫,欢迎大家一同交流。
0 请登录后投票
   发表时间:2007-06-20  
有商业SSO产品称其统一认证系统不限制应用系统开发技术,无需修改(或尽量少改)应用系统,只需为应用系统安装插件即可。很想知道是如何实现的。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics