跨任意语言实现同步登录的方法

 更新时间:2007年01月05日 00:00:00   作者:  
关键字:跨平台登录 共享session asp php .net jsp 
做系统整合的时候常常会面对不同系统的同步登陆问题,也成为单点登陆SSO 
SSO有很多商业产品,部署安装都相当的繁琐。 
这里我说一个非常简单的方法实现同步登陆 
我要做的是asp.net和asp的,一下方法适用于任意语言的同步登陆,如php jsp等 
如,我在asp.net中登陆,会获得一个session.sessionId的随机数值,这个值一般情况下是不会重复的 
在用户数据库里新建一个aspsession的字段,用户登陆的时候,首先获得sessionId,然后清空用户数据库中所有aspsession=sessionId的aspsession的内容 
update [user] set aspsession="" where aspsession= @sessionId 
然后更新sessionId到当前登陆用户的aspsession字段中 
update [user] set aspsession = @sessionId where id=@登陆用户的ID 
这样就保证了sessionId的唯一性 
完成登陆 
系统切换操作 
如要从asp.net系统切换到asp论坛,在asp.net系统中有bbs的超链接。http://onewww.net/bbs 修改代码为如下http://onewww.net/bbs/login.asp?sn=<%session.sessionID%>这样就把sessionId传递给了asp系统的登陆页面 
asp登陆页面要完成的工作是截获sn,然后到asp.net的user数据库以aspsession=sn查询出username或者userid,最后在asp论坛中依这个username完成登陆。 
我是完成了一个asp.net系统和动网论坛的登陆 
如果有别的方法欢迎讨论

相关文章

最新评论