论坛首页 Java版 企业应用

SSO for FTP, WebDAV, HTTP, SVN

浏览 3869 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
最后更新时间:2006-07-10
采用HTTP File Upload 实现的 文档管理系统 有很多,而且做的相当好。

著名的例子应该是,Java.net。文档管理实现了类似于FTP功能,能够管理目录和文件,而且目录和文件都可以加入说明和注释。

很多内容管理发布系统,forum,  blog, wiki, 都有简单的upload file (图片,附件)的功能。
如果需要提供更加丰富灵活的文件服务,更加丰富的管理功能,比如文件空间大小的计算和分配,目录管理和创建,用户自定义的权限控制。这时候,一个健壮的弥补了所有漏洞的FTP Service更加适合。

SSO, Single Sign, 单点登陆。
server为所有系统进行统一用户管理,登陆一次,就可以进入所有系统。

我思考的问题是,FTP Server如何与HTTP Server组合使用,为用户提供更多的服务。如何能在HTTP Server 和 FTP Server之间实现SSO。
这样用户登陆了HTTP Server之后,就有了相应的操作FTP Server的权限。

HTTP Server的SSO。
same domain name, 采用cookie实现。cookie是HTTP协议定义的。
different domain name, 也有各种方案,比如redirect。
本文后面列出了一些相关的SSO 帖子和文章。

我的想法是,如果这么配置的话。HTTP Server 和 FTP Server 可以分成不同的Server。FTP Server就是一份。上面主要是用户上传的静态文件。
HTTP Server也可以分为静态和动态两部分,也可以不分,只采用动态内容server,比如servlet server。
如果分了静态和动态。
那么静态部分就可以放在一个Apache Server, light httpd, 或者其他的http server。动态部分可以用servlet server。
这时候,只有动态部分的servlet server, app server可以单独扩展,做比较高级的负载均衡的cluster。
系统静态部分也是单独扩展,作比较简单的cluster。
FTP Server也是,可以不用cluster,或者简单的cluster。

如果是采用HTTP Server自己管理File Upload,如果采用Cluster, 那么一般是通过数据库来同步不同cluster node之间的 file 变更。或者是通过一些配置,把对文件的需求都导向一个cluster node。

--  文档管理的版本控制

这个贴子里面谈到的 Alfresco,在HTTP上实现了文档版本控制。
http://forum.javaeye.com/viewtopic.php?t=17515

当需要版本控制的时候,WebDAV、SVN, CVS 应该也有用武之地。

由于WebDAV是HTTP扩展,WebDAV 和 HTTP 之间实现SSO,应该问题不大,虽然我还没有查到具体答案。
SVN提供了HTTP协议的操作方式,也应该能和HTTP实现SSO。
CVS现在只有pserver之类的C/S socket协议,应该比较困难。

-- SSO

Cookie, Redirect, Token, Passport, SID

http://forum.javaeye.com/viewtopic.php?t=6473
http://forum.javaeye.com/viewtopic.php?t=7138
http://www.mengyan.org/blog/archives/2006/02/20/113.html
http://www-128.ibm.com/developerworks/java/library/j-gss-sso/
http://kb.csdn.net/java/Articles/200606/b2c189ea-dd10-460c-9a97-654d86522405.html
http://www.metarnet.com/culture/met1/c7_1.htm

--- 问题

能否在HTTP, FTP, WebDAV, SVN等多种协议和服务之间,比较方便的实现SSO?
   
最后更新时间:2006-07-10
用过CAS,感觉是个非常方便的SSO库,简单易用。
   
0 请登录后投票
最后更新时间:2006-07-11
第一,多个web应用做sso,它们之间有一个共同的浏览器作为客户端,
假如为这些服务做唯一的一个客户端工具,那就有可能。
   
0 请登录后投票
最后更新时间:2006-07-11
nihongye 写道
第一,多个web应用做sso,它们之间有一个共同的浏览器作为客户端,
假如为这些服务做唯一的一个客户端工具,那就有可能。


FTP, HTTP, WebDAV 都可以通过Browser来使用。
SVN也基于HTTP,可能需要包装一下。

Nicholas_Ding 写道

用过CAS,感觉是个非常方便的SSO库,简单易用。


thanks, 我上面给出的SSO资源列表也提到的CAS。
我会调查CAS对FTP SSO的支持。
   
0 请登录后投票
最后更新时间:2006-07-11
以前做数据交换中心考虑用FTP。
也考虑过单点登陆,不过最终否决FTP的是,浏览器作为FTP客户端太不方便,就算你解决了单点登陆问题,HTTP Server 和 FTP Server 看起来还是两个应用,总不能让用户点击拷贝粘贴吧。

关注中希望有好的解决方案。
   
0 请登录后投票
最后更新时间:2006-07-14
buaawhl 写道
由于WebDAV是HTTP扩展,WebDAV 和 HTTP 之间实现SSO,应该问题不大,虽然我还没有查到具体答案。 

jakarta slide作为WebDAV服务器,可以放在tomcat上,就是使用普通的HTTP认证机制,包括jdbc realm,我做过自己的realm实现,很容易,修改一下它的realm的实现应该不难做到sso。但slide2.0的ACL做得很简陋,而且对文件大小有限制,几十M吧,对非英语编码的支持也不太好,2.0以后就不知道了。
   
0 请登录后投票
最后更新时间:2007-03-07
有什么实际进展吗,FTP Server如何与HTTP Server组合使用我最近也遇到了,不知道如何下手,望指点。
   
0 请登录后投票
最后更新时间:2007-03-07
使用SAML,通过XML来传递信息,不过我做的时候,都是将SAML绑定到SOAP消息中,SOAP消息又是绑定到HTTP消息中的,不知道在其它协议中如何交互?期待ING
   
0 请登录后投票
最后更新时间:2007-03-31
正在做原有程序,论坛和blog的整合. 认证这部分非常令人恼火

原先的程序用户认证部分没有使用session方式,就是为了以后的集群考虑,没想到有出现了别的问题

论坛程序使用的是: mvnforum,jforum也安装上了,不过看他的代码一点注释都没有,另外一点文档也没有,所以不敢用了.

blog程序用的是: jroller,sun的网站用的就是这个,网易好像也是用这个改的

服务器使用的是 linux CentOS4.4
jsp服务器 Tomcat5.5.23
数据库 mysql5
web服务器 目前使用的是lighttpd

----------------------------------------------------------------------
闹心的问题:

如何与原先的系统集成,达到单点登录目的.

请大家各抒己见
   
0 请登录后投票
论坛首页 Java版 企业应用

跳转论坛:
JavaEye推荐