我有一个wpf应用程序,其中的app.config connectionstring部分需要加密。问题是此应用程序要供多个用户使用,因此我们需要共享连接字符串部分通过密码值文本生成加密的密钥。
我看到了很多有关如何执行此操作的帖子,但是我的问题是,是否有一种更简便的方法来共享所有计算机使用的密钥,而不是必须将其放在EACH计算机上。
欢迎使用堆栈溢出。
您想在连接字符串中隐藏什么?
您是否要限制计算机或该计算机的每个用户的访问?
我推断您需要一个所有应用程序都必须连接到的已知身份验证服务器URL,对其进行身份验证(可能使用用户输入),作为回报,它们将获得身份验证令牌和其余数据访问的连接URL。
加密的数据不需要由其他计算机解密,而只有运行您的应用程序的计算机才能解密。您可以在密钥生成过程中使用该计算机的某些唯一计算机标识符(例如CPU或主板序列号)来加密该计算机的数据。
我建议不要存储密码,但是您可以存储从身份验证服务器返回的令牌,当然也建议您避免将单个加密密钥传递给安装了应用程序的每台计算机的麻烦。