问题

我的团队正在开发的应用程序有一个DLL,用于执行所有数据库访问.该应用程序不能使用可信连接,因为数据库在防火墙后面,域服务器不在.所以似乎连接字符串需要有数据库用户名和密码. DLL目前有硬编码的数据库连接字符串,但我不想在启动时执行此操作,因为可以拆卸程序,并且打开用户名和密码.

其中一个要求是,密码需要每隔几个月更改一次,所以我们需要将其推广到我们的内部用户基础。

有没有办法存储加密的密码,我们可以轻松地分发到整个用户基础而不将其存储在汇编中?

更新:感谢所有回答的人.我将尝试回答一些问题......数据DLL被ASP.NET WebForms和VB.NET WinForms使用.我知道应用程序可以拥有自己的配置文件,但我没有在DLL的配置文件上看到任何东西.不幸的是,我无法找到Jon Galloway发布,所以我无法判断这是否有效.从开发角度来看,我们不想在内部使用Web服务,但可能会在明年某个时候向第三方提供它们.我认为冒名不起作用,因为我们无法通过防火墙验证用户身份.作为用者(或前用户),我们可以保持每个人!

  最佳答案

我不确定,但我相信你可以将它放在配置文件中并加密配置文件.

更新:见Jon Galloway的帖子here.

  相同标签的其他问题

.netsql-serverconnection-string