C# 在.NET4中持久保存安全信息
您可以使用Microsoft Visual Studio 2010和Microsoft.NET Framework 4创建应用程序。该应用程序连接到Microsoft SQL Server 2008数据库。 应用程序使用Microsoft ADO.NET SQL Server托管提供程序。连接失败时,应用程序将记录连接信息,包括完整的连接字符串。该信息以纯文本形式存储在.config文件中 您需要确保数据库凭据是安全的 应将哪个连接字符串添加到.config文件中 A。数据源=myserver地址;初始目录=myDataBase;综合安全=SSPI;持久安全信息=false B。数据源=myserver地址;初始目录=myDataBase;综合安全=SSPI;持久安全信息=true C。数据源=myserver地址;初始目录=myDataBase;用户Id=我的用户名;密码=我的密码;持久安全信息=false D。数据源=myserver地址;初始目录=myDataBase;用户Id=我的用户名;密码=我的密码;持久安全信息=true 根据指南,答案是A。但在我看来,答案是“C”。如果我们使用integratedsecurity=SSPI,则不需要提供用户ID和密码。因此,Persist Security Info=false无效 据我所知,持久化安全信息仅在连接字符串具有用户凭据时生效C# 在.NET4中持久保存安全信息,c#,.net-4.0,connection-string,C#,.net 4.0,Connection String,您可以使用Microsoft Visual Studio 2010和Microsoft.NET Framework 4创建应用程序。该应用程序连接到Microsoft SQL Server 2008数据库。 应用程序使用Microsoft ADO.NET SQL Server托管提供程序。连接失败时,应用程序将记录连接信息,包括完整的连接字符串。该信息以纯文本形式存储在.config文件中 您需要确保数据库凭据是安全的 应将哪个连接字符串添加到.config文件中 A。数据源=myserver地
你能告诉我哪一个是正确的吗?谢谢。你说得对。Persist Security Info=false仅在连接字符串中提供用户名和密码时有效。但问题是“您应该在.config文件中存储什么”,并且考虑到“信息存储为纯文本”,您不应该在配置文件中存储UID和PWD。 如果存储C,则可以从.config文件中提取PWD和UID。但是,如果您存储了,则没有可提取的凭据 我不确定,为什么A有
“Persist Security Info=false”
,但看起来这是一个很好的实践。
参见MSDN示例:
false
,所以它看起来也非常冗余。