如何创建只能由应用程序本身打开的sql server数据库?

时间:2017-04-12 09:38:52

标签: c# sql-server database ado.net database-security

我正在使用“实体框架数据库第一种方法”在c#中开发桌面应用程序,这需要高度安全,即没有人可以访问其数据库而无需登录该应用程序,也没有人可以使用数据库文件直接提取数据。该数据库有20个表。虽然我试图加密数据库但是当应用程序启动时,我将不得不解密数据库文件以便连接并让它解密,直到用户试图退出应用程序。

没有冒犯,我是sob服务器的菜鸟,我想为我的c#桌面应用程序创建一个高度安全的sql server数据库,只能由该应用程序打开。我知道有两种身份验证模型可以连接到SQL服务器,即Windows身份验证和混合身份验证。但我不希望使用Windows身份验证打开我的数据库。

有没有办法只有一个用户可以用密码打开数据库?

2 个答案:

答案 0 :(得分:0)

如果您使用SQL compact,数据库服务器实际上只适用于您的应用程序,这可能是最接近的应用程序,但它并不能阻止人们将文件放入SQL Express / server

同样:embedding sql express可能会有所帮助,但文件仍然在那里......和..

如果SQL在实例中是,则可以使用用户名/密码来控制它,但是具有该实例的管理员权限的任何人都可以进入该实例。

您还需要考虑如何备份数据

答案 1 :(得分:0)

是。你可以轻松处理这个问题。 转到安全>> 登录,然后使用密码创建用户。您还可以授予他访问特定数据库的权限。您可以指定服务器角色部分。