【问题标题】:How to store a password in a database for impersonation如何将密码存储在数据库中以进行模拟
【发布时间】:2014-12-17 02:26:11
【问题描述】:

在 Windows 操作系统上,我需要一个 WinForms 应用程序才能访问(读/写/删除/修改)登录用户无权访问的文件夹中的文件。另一种说法是,用户应该只能在使用应用程序时访问文件。

为了实现这一点,我们将允许应用程序进行配置,使其在执行需要访问文件夹的代码时模拟确实有权访问文件夹的用户。在所有其他时间,应用程序将作为登录用户执行。

应用程序的配置设置将在数据库中。假设登录用户有足够的权限从数据库中获取配置设置,因此应用程序可以加载包括模拟所需的用户名和密码的配置设置。

应用程序将在多台 PC 上运行。

应该使用什么方法来存储密码、检索密码,然后能够使用它进行身份验证以进行模拟?散列、加密还是其他方法?

【问题讨论】:

    标签: .net winforms security encryption cryptography


    【解决方案1】:

    由于您稍后将需要(超级)用户名和密码(用于模拟),我建议您应该使用对称加密。

    话虽如此,如果您在使用 Active Directory (AD) 的企业环境中进行部署,我强烈建议您走这条路。即使用 AD 对当前用户进行身份验证,并可能将应用程序配置为在(超级)用户上下文中运行。

    祝你好运

    【讨论】:

      猜你喜欢
      • 2011-02-27
      • 2012-03-16
      • 2016-12-25
      • 2011-07-15
      • 2012-11-25
      • 1970-01-01
      • 2016-01-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多