【发布时间】:2013-06-04 11:52:57
【问题描述】:
我正在创建一个产品软件,许多人将自己安装在他们的机器上。
这是一个 VB.Net - SQL Server 应用程序。
我当然不希望用户安装一些 SQL Server GUI 工具,例如 SQL Server Management Studio,然后直接摆弄数据库值/定义。
但是当我的客户使用他自己的(很可能是系统管理员)帐户安装应用程序(以及数据库 - 和 SQL Server 实例,如果没有的话)时,该帐户显然将被授权访问,阅读并修改数据库。
有什么办法可以预防吗?
我们尝试将.mdf 文件与应用程序一起保存,但可以手动附加。
我们尝试使用.sdf 文件,它允许创建它自己的密码,我们最初喜欢这个想法,但这对于单项目.net 解决方案来说是可以的。对于具有多个项目的 .net 解决方案(例如,一个用于用户信息和身份验证,一个用于员工工资单等),每个项目需要该文件的 1 个副本,从而使该想法毫无用处。
【问题讨论】:
-
如果用户要“破解”系统(或者更确切地说,如果这样的修改会损害系统完整性)那么微不足道,那么你已经失去了..
-
:) 嗯,这不是技术上的敏感信息,但软件应该管理数据库,这就是创建它的原因。否则我宁愿只部署数据库并要求他们手动管理和修改并插入它......怎么说?!嗯,这就是我可以说迷路的地方。
-
@MitchWheat,不是真的。我怎样才能让他手动编辑它?!我的意思是,如果他删除了自己上个月的工资记录,然后根据软件的结果,要么重新索赔,要么由于软件出错客户向我公司索赔工资?!
标签: database security sql-server-2005