我意识到这个问题的答案可能很明显(如果对我来说有些不便),但我希望有人能有一个巧妙的解决方案。
我正在利用空闲时间慢慢构建一个应用程序,希望对工作有用。这是一个用于分配同行评审的简单跟踪应用程序。基本上,我只是想自学一些 C#。
我的问题是,因为我真的不能安装任何东西,而且我不能使用我自己的网站(两个原因 - 1)国防部可能不允许它,2)我希望这是一个桌面(WinForms ) 项目,而不是 Web),我使用 Jet(如 Access)作为数据存储。
我需要一种方法来保护数据库不被窥探,因为有些东西我真的只希望管理员级别的用户(如团队负责人)访问。我基本上决定设置一个数据库密码。安装时将选择一个密码,用于保护数据库,然后加密以供应用程序获取、解密并用于打开数据库连接。
我的问题是我希望这段代码有点公开。我最终想在我的网站上发布我的代码,并向 StackOverflow 和编程 subReddit 询问一些快速评论和见解。把它想象成一个穷人指导计划。对于维护,尤其是在我离开这份工作之后,我的同事最终将可以使用该源。如果他们有权访问加密的“密钥文件”和源,他们将能够确定数据库密码。
有没有办法对此进行编码,以便即使使用文件和代码,我的同事也无法进入数据库?我认为不是,但值得一问。
如果没有办法做到这一点,我想我的第二个选择是在我把它放在我的网站上时更改加密(将加密等价于哈希 - IV? - 在发布时更改为不同的东西),并提供源受密码保护的 rar 文件,仅将密码提供给管理人员。
有任何想法吗?