English 中文(简体)
如何sqlConnection隐藏连接字符串的密码
原标题:
  • 时间:2008-12-11 06:52:10
  •  标签:

我正在制作一个组件,使用一些数据连接到数据库,这些数据包括用户ID和密码,它将这些值存储在私有变量中,但任何程序员在初始化后都可以在调试器中查看该值,所以我想知道SqlConnection如何隐藏该值,当我查看ConnectionString属性的值时,我可以看到除密码外的所有信息,它在某个地方存储密码,但不会使其可见,即使在调试器中,我也看不到任何存储密码的变量,我知道可以使用SecureString来保护密码,但我想知道SqlConnection对象的实现方式。

谢谢。

Juan Zamudio (in simplified Chinese: 胡安·萨姆迪奥; in traditional Chinese: 胡安·薩姆迪奧)

问题回答

手册中:

The ConnectionString is similar to an OLE DB connection string, but is not identical. Unlike OLE DB or ADO, the connection string that is returned is the same as the user-set ConnectionString, minus security information if the Persist Security Info value is set to false (default). The .NET Framework Data Provider for SQL Server does not persist or return the password in a connection string unless you set Persist Security Info to true.

我不确定这是如何实现的。未经验证的猜测是它用安全参数填充结构,然后将其发送到服务器,除非您将Persist Security Info设置为true,否则实际上不会存储它们。





相关问题
热门标签