2010-06-01 67 views
1

我们有一个.net两层应用程序,其中桌面程序正在与数据库交谈。我们支持MS SQL Server 2000,2005,2008和Oracle 9,10和11.如何将内部数据发布到互联网 - 尽可能简单

该应用程序被出售,而不是收缩包装,但非常接近。对于我们而言,安装和配置非常简单,因为安装说明通常以书面形式提供给客户内部IT部门。我们的应用程序通常不被视为IT部门的关键任务,因此我们需要将他们的工作降到最低。

现在我们开始对基于相同数据构建Web应用程序的愿望了。 Web应用程序将由我们托管并作为SaaS应用程序提供。

现在的挑战是如何在Web应用程序和客户内部数据库之间来回移动数据。因为我看到它有一些要求:

  • 我们必须准备好处理客户数据库无法从DMZ访问的情况。我想最简单的解决方案是,所有的通信都是从客户LAN内发起的。
  • 尽可能少的防火墙配置。最好的情况是,只要客户局域网的出站流量不被阻塞,我们就可以在没有任何特殊配置的情况下运行。如果我们需要在防火墙中更改某些内容,我们必须能够证明更改是安全的。
  • 它不一定是实时的。每十分钟左右批量移动数据即可。
  • 数据同时移动但不是相同的表,所以我们不必支持合并。
  • 这将是很好,如果我们不必完全推出我们自己的框架。

期待听到您的建议。

+0

如果您提供SaaS,那么通常关键是您托管数据,而不是客户。你真的需要在两个地方复制吗? – UpTheCreek 2010-06-01 07:10:33

+0

如果我们可以重写历史记录,那么我们可能会考虑两种应用程序的SaaS,但它需要对现有应用程序进行重大改写才能使其作为Saas运行。此外,我不确定客户是否希望“放弃对其数据的控制”。 – mlarsen 2010-06-01 07:15:39

回答

0

是不是可以为此使用webservices?您的应用程序可以从客户的网络或互联网上调用此Web服务。 如果需要,webservices可以执行一些CRUD语句。我知道SQL 2005和2008有自己可以使用的webservices。

如果你想保护你的数据,你也可以在web服务中添加一个SSL证书。

这些webservices可以在您的应用程序中作为一个额外的层次。

0

使用VPN。它将允许以适当保护的方式访问DMZ之外的资源。

相关问题