我们的应用程序是一个Windows客户端(C ++ / MFC迁移到C#),它使用SQL Server Express作为其数据存储。我们定期更新应用程序使用的数据。 (我们的用户使用我们提供的内容数据作为他们自己使用客户端构建的项目的基础;数据库也存储他们的项目,以实现跨网络的协作。
有一段时间我们使用了古老的方法来提供包含所有最新数据的巨大“更新包”。 updater必须在服务器上运行,并将数据库文件与包中包含的数据库文件交换出来。是的,可怕的做法有很多原因。我们想要废除它。
具体来说,我们将提供一个更新对话框,其中用户检查他们想要更新的项目,然后单击“更新”。然后,后台进程从内容服务器中提取所选项目并将其插入用户的数据库中。
从Windows客户端内部提取这些数据的安全方法是什么,因为他们可能会选择加入或退出数百个单独的项目?
我考虑过:
其他以节目内容更新为特色的应用是如何做到的?是否有正确方向(或至少是一个好方向)的建议?
谢谢, d
编辑:我们不一定关心数据传输是否安全(内容不是敏感数据);在这种情况下,通过“安全”,我的意思是“有一种比在中国暴露远程SQL服务器更好的方式”。
答案 0 :(得分:0)
直接公开SQL Server通常是一个坏主意。请改用Web服务,WCF。