我应该使用哪种技术来公开服务器文件系统?

时间:2010-06-20 15:18:45

标签: c# architecture filesystems webdav

我需要将存储在我们服务器机器中的存储库暴露给客户端。应对客户端进行身份验证,并启用读写权限。我们对实施的方式存在疑问:

  1. 我们已经有了基于客户端的COM层,所以我们可以用一些C#UI包装它。

  2. 服务器休息服务,然后在C#/ GWT /等中编写基于UI的休息服务。

  3. 实施WebDav协议并获得免费客户端(Windows,总指挥官,其他人)

  4. 您认为最佳方法是什么?

3 个答案:

答案 0 :(得分:1)

我不知道您正在谈论的是哪种存储库,以及您的客户需要使用哪种存储库。但如果它是简单的文件读取和写入,我会说WebDAV是最好的方法:它在所有平台上得到广泛支持,有大量免费客户端,可以在几分钟内在Windows机器上设置,支持SSL(I (并且)非常容易使用。

如果您需要做更多细粒度的事情,比如协议更改,您是否考虑使用Subversion,Git或Mercurial等源代码控制软件?它们会带来很大的可能性,但是客户的学习曲线非常陡峭。我不会向非技术人员推荐这个。

答案 1 :(得分:1)

WebDAV或SFTP(SSH文件传输协议)服务器可以正常工作。它们提供类似的功能,SFTP更广泛。

答案 2 :(得分:0)

我不确定你在基础设施方面有什么,但我建议将服务器放在DMZ中,这样如果有人入侵,他们就不能对网络的其余部分做太多的事情。

您打算如何验证用户身份? ASP.NET 2.0+有一些有用的库,可以提供一些管理用户的开箱即用功能,这些功能与FormsAuthentication集成在一起;这将为您提供身份和访问管理选项 - 假设您编写了一个asp.net前端。

你采取什么方法,我建议PEN testing - 无论是你自己还是第三方安全专家。