假设我有一个 C# 多用户客户端-服务器应用程序和 SQL Server 2008 Express 作为数据库。这是一个应该安装在客户个人电脑上的应用程序,为公司工作的每个人都可以访问,即对.mdf
文件的物理访问是免费的,因此可以轻松地将.mdf
文件复制到他/她的机器上,附加它并查看我开发的所有数据库结构和存储过程的代码。
我已经阅读了很多关于这个问题的信息,这些信息都指导我使用Windows 的免费EFS(加密文件系统)。因此,我实现了.mdf
通过专门为此创建的特定 Windows 用户帐户加密我的文件,为用户设置密码,这样任何人都无法以我的用户身份登录并解密文件。一切都很好,但我遇到了一个难题,客户登录的用户几乎总是在本地管理员组中,因此他们可以轻松地为我的用户重置密码并以我的用户身份登录以解密文件。我不能从管理员组中排除他们的用户。
谁能帮我解决这个问题,好吗?或者也许有可能在没有创建额外用户的情况下解密文件,这样他们就无法解密.mdf
文件?
我真的很感激任何帮助!