Sql server Can';t使用用户和传递凭据连接到本地数据库

Sql server Can';t使用用户和传递凭据连接到本地数据库,sql-server,sql-server-2012,Sql Server,Sql Server 2012,我正在尝试连接到本地SQL Server数据库,但出现以下错误: 用户“域\用户名”登录失败 当我打开SQL server并查看Security\Logins文件夹时,我确实看到了用户DOMAIN\Username。这也是我用来登录Windows的用户 我的连接字符串如下所示: <add name="ServerConfiguration" connectionString="server=localhost; database=BN_Configuration;

我正在尝试连接到本地SQL Server数据库,但出现以下错误:

用户“域\用户名”登录失败

当我打开SQL server并查看
Security\Logins
文件夹时,我确实看到了用户
DOMAIN\Username
。这也是我用来登录Windows的用户

我的连接字符串如下所示:

<add name="ServerConfiguration"
       connectionString="server=localhost; database=BN_Configuration; 
       Integrated Security=false; User ID=DOMAIN\Username; Password=123456;" 
       providerName="System.Data.SqlClient" />

有人知道我为什么不能用这些凭证登录吗

--


注意我希望与SQL Server数据库中存在的用户进行身份验证。因此,我不希望在
集成安全性设置为
false
的情况下执行Windows身份验证。看起来您正在使用Windows凭据作为SQL Server凭据。请尝试integrated security=true,不要指定用户ID和密码。

在您的连接字符串中
integrated security=false
表示在连接中为SQL Server中存在但不是域用户的帐户指定了用户ID和密码。当集成安全性=true时,将使用当前Windows帐户凭据进行身份验证。如果是应用程序,它将使用当前登录的用户,而对于web应用程序,这完全取决于应用程序池的设置方式

您说``integratedsecurity=false`是在混淆定义,但传递域凭据是不可能的

使用域帐户

  • 设置集成安全性=真
  • 删除
    用户标识
    密码
    部分
  • 在SQL Server中映射域帐户,确保设置Windows身份验证
  • 如果是web应用程序,请确保应用程序池设置为在该域帐户下运行
  • 使用SQL Server帐户

  • 设置集成安全性=false
  • 创建SQL登录,确保它使用
    SQL Server身份验证
  • 将连接字符串的
    用户标识
    密码
    属性设置为与上面创建的相同的详细信息

  • 注意:最后一点,请确保用户也可以访问您连接的数据库(在您的情况下是
    BN_配置
    )。

    请尝试在数据库服务器的安全部分中查看Windows的事件日志,以获取更详细的错误消息。您不能以这种方式使用域用户。创建SQL Server用户或
    Integrated Security=true,删除
    user ID`和
    Password
    ,它将使用运行该进程的用户。@DavidG我刚刚在SQL Server中创建了一个新用户。但当我尝试使用新凭据登录时,它仍然会说我无法登录。请阅读此内容,然后澄清您的问题您的编辑显示您仍然不太了解SQL安全性的工作原理。创建SQL用户时,是从域中创建的,还是给了它一个新的用户名/密码?尝试了一下,但它仍然说我无法登录:用户“domain\BBL004$”的登录失败。BBL004是我的计算机名。@Vivendi然后将您的应用程序更改为以其他帐户运行。