综合安全=错误

时间:2014-05-01 06:39:25

标签: sql-server sql-server-2008

如果我使用connection string

integrated security=false;username=aduffy;password=blah

我认为这相当于

  
      
  1. 我没有使用Windows身份验证
  2.   
  3. 这些是我的SQL Server身份验证详细信息? (aduffy& blah)
  4.   

那是对的吗?

4 个答案:

答案 0 :(得分:5)

来自msdn

Integrated Security

  

集成安全性如果为false,则在连接中指定用户ID和密码。如果为true,则使用当前Windows帐户凭据进行身份验证。   识别的值是true,false,yes,no和sspi(强烈推荐),这相当于true。   如果指定了用户ID和密码并且Integrated Security设置为true,则将忽略用户ID和密码,并将使用Integrated Security。

答案 1 :(得分:1)

SqlConnection.ConnectionString记录了所有有效的SQL Server连接字符串关键字及其含义。

集成安全性

  

false 时,在连接中指定了用户ID和密码。 true 时,将使用当前的Windows帐户凭据进行身份验证。   认可的值 true false 没有 sspi (强烈的推荐),相当于 true 。   如果指定了用户ID和密码,并且Integrated Security设置为 true ,则将忽略用户ID和密码,并将使用Integrated Security。   SqlCredential是一种更安全的方式,可以为使用SQL Server身份验证的连接指定凭据(Integrated Security = false )。

答案 2 :(得分:1)

是的,你是正确的,要使用你需要设置Integrated security = true的Windows身份验证。 Microsoft在使用Windows身份验证时建议使用SSPI。

  

如果为false,则在连接中指定用户ID和密码。什么时候   是的,当前的Windows帐户凭据用于   认证。识别的值是true,false,yes,no和sspi   (强烈推荐),这相当于真。如果用户ID和   指定密码,并将Integrated Security设置为true,即   用户ID和密码将被忽略,集成安全性将被忽略   用过的。 SqlCredential是一种更安全的方式来指定a的凭据   使用SQL Server身份验证的连接(集成   安全= FALSE)。

http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlconnection.connectionstring(v=vs.110).aspx

答案 3 :(得分:0)

如果为Integrated Security=True,则表示程序将使用当前用户的登录名连接到SQL Server。 而如果 Integrated Security=False,则表示程序/软件需要User ID=*****;Password=*****;才能从应用程序连接到SQL Server。