问题是关于提供审核(谁使用应用程序,何时)和保护(谁可以启动应用程序 - 没有细粒度控制或数据安全性)桌面应用程序为您开发。
你更喜欢什么?
在您的应用程序中内置了身份验证机制
如果使用此选项,我们必须在应用程序本身中包含用户和密码管理,登录屏幕等。
使用底层操作系统进行审核和身份验证
此处需要在安装后配置应用程序,以便只有属于某些组的用户才能执行主程序或编辑配置文件。
答案 0 :(得分:2)
你更喜欢什么?
好吧,我更喜欢选项2。
选项1可能在某种程度上可行,但可能会非常混乱。它存在固有的问题,即对任何配置和数据库文件的权限仍由底层操作系统决定。请注意,合法用户必须对某种数据库具有写权限,因为他们必须至少能够更改自己的凭据。但除非您在操作系统级别进行区分,否则您唯一的选择是让每个人都可以写入数据库,因此无权对该应用程序执行任何操作的用户仍然可以对其文件具有写入权限。不好......
答案 1 :(得分:1)
我个人将选项2与SQL服务器结合使用。我使用他们的Windows(如果它是Windows)登录令牌验证用户。我通常不会让他们重新输入密码只是拿他们的登录令牌,但这是一个提高安全性的选项。显然有人可能无人看管他们的电脑,并阻止有人跳到那里。
我选择不使用活动目录将用户放入组中以访问不同的程序,但这意味着我必须联系IT以添加用户。我发现在SQL Server上维护一个表更容易,授予登录令牌访问程序的权限。我还会使用sql server来记录你想要的任何活动,因为它保持简单。