使用本地数据库部署Windows表单(任何人都可以访问查看我的数据库文件)

tondar1369

新成员
已加入
2016年6月21日
留言内容
3
编程经验
3-5
您好,我已经完成了软件的C#代码开发,现在该为它进行设置了(使用"Setup and Deployment"Visual Studio项目)并将其发布给用户以安装和使用该软件。该软件使用DLL文件,数据库文件(mdf,ldf)和其他一些文件(.exe,.exe.config,.exe.manifest和.pdb)...在此软件的安装项目中,我需要放置所需的文件要在用户PC上安装的文件...所以我将所有文件放在debug文件夹(或包括数据库文件mdf和ldf的发布文件夹)中。问题是安装此应用程序的任何人都可以看到我的MDF和LDF数据库文件,并且可以轻松地将其附加到sql服务器,并了解我的表的设计方式和记录。
请帮助我解决我最需要的这些问题:


  • 1)如何防止用户看到这些源文件?
  • 2)这种发布方式(将每件事放入调试或发布文件夹中以安装最终用户)是否正确?
  • 3)我应该直接放置MDF和LDF文件,还是必须做一些保护它们的工作,例如编译成不可逆的格式,只有应用程序可以使用它,而其他任何人都不能使用它?
  • 4)我应该在Visual Studio中创建数据库的过程中做一些事情来阻止除软件本身之外的任何人访问它吗?
  • 5)我是否缺少用本地数据库发布应用程序的概念?


附言:
应用程序是使用Visual Studio .net 2013(.NET 4.5)由C#Windows窗体开发的
安装程序项目由"Setup and Deployment" of visual studio
应用程序通过Visual Studio使用本地数据库
这是我第一次发布实际的软件,对任何缺少信息表示抱歉

谢谢你的帮助
 
Last edited:

金西尼

C#论坛主持人
工作人员
已加入
2011年4月23日
留言内容
3,553
地点
悉尼,澳大利亚
编程经验
10+
人们看到您的数据库设计时是否存在特定问题?出于某些原因,您可能想限制对某些或全部数据的访问,但是阻止人们看到表格设计似乎是最重要的。
 

tondar1369

新成员
已加入
2016年6月21日
留言内容
3
编程经验
3-5
人们看到您的数据库设计时是否存在特定问题?出于某些原因,您可能想限制对某些或全部数据的访问,但是阻止人们看到表格设计似乎是最重要的。

谢谢回复。
我沉迷于数据库安全性吗?
它是带有一些数据库存储过程的简单表设计。
我应该保留现状并且不关心安全性吗?
因为这是我的第一次,我不确定它是否重要。

谢谢
 

金西尼

C#论坛主持人
工作人员
已加入
2011年4月23日
留言内容
3,553
地点
悉尼,澳大利亚
编程经验
10+
听起来确实有些过分谨慎。一般而言,用户可以看到您的数据库架构并不重要,而且通常可以看到数据也无关紧要。他们将如何处理他们不应该使用的信息?显然,有时存在一些用户不应该看到的数据,通常不希望他们直接在数据库中编辑数据,因为他们可能会创建您的应用程序不期望的状态。即使这样,也仍然是他们的数据,如果应用程序崩溃了,那么只有他们自己受到了伤害,所以这不是世界末日。
 
最佳 底部