SQL Server 2008 - 用户'user1'登录失败用户未与受信任的SQL Server连接关联

时间:2011-02-13 16:47:15

标签: sql-server

我在Windows XP上安装了SQL Server 2008 R2。

在安装过程中,我选择了“SQL Server和Windows身份验证模式”

当我在服务器上的SQL Server Management Studio中单击鼠标右键时 - >安全选项卡“SQL服务器和Windows身份验证模式”已选中。

但是当我点击我的数据库时 - >属性 - 查看连接属性在Windows身份验证中设置身份验证方法。

在我的数据库中添加了一个user1,密码为user1

但我无法从C#(Visual Studio 2008)登录我的数据库,因为发生了错误:

  

用户'user1'登录失败   user未与受信任的用户关联   SQL Server连接

什么是不对的?


当我得到:

string connectionStr = @"Data Source=rmzcmp\SQLExpress;Initial Catalog=ResourcesTmp;Integrated Security=True";

我有以下错误:

{“无法打开登录请求的数据库\”ResourcesTmp \。登录失败。\ r \ n登录失败,用户'RMZCMP \ rm'。“}

rm是我登录计算机的原始用户名。 当我得到rm我有错误:

{"Login failed for user 'rm'. The user is not associated with a trusted SQL Server connection."}

试。

此致

5 个答案:

答案 0 :(得分:1)

您说在您的数据库中创建了一个用户 - 您是否也为您的服务器创建了登录

在SQL Server 2005及更高版本中,安全性分为两步:

  • 首先必须定义一个登录,使用户能够登录到该SQL Server
  • 根据该登录信息,您可以在各个数据库中定义用户

另外:您没有向我们展示您的连接字符串,因此我们只能猜测您正在使用的设置。从错误消息中,我几乎猜测你在连接字符串中使用Integrated Security - 但是从问题的其他方面来看,你似乎已经创建了一个特定用户(并且可能是该用户的登录名) ) - 所以你不想使用集成(Windows)安全性......

最有可能的是,您的连接字符串无效 - 或者您缺少登录信息 - 或两者兼而有之。您需要向我们提供更多信息,以便我们能够真正提供帮助!

答案 1 :(得分:1)

您可以根据以下内容更改连接字符串:

Connection string.com

确保您的SQL Server安装成功。

例如:

  1. 如果可以创建SQL Server身份验证登录

  2. 您可以在SQL Server身份验证中使用用户名/密码登录。使用连接字符串,如:

    Data Source=Servername;Initial Catalog=DatabaseName;User ID=user;Password=sa
    
  3. 但是

    1. 如果您只能使用Windows身份验证登录,则安装有问题。使用连接字符串:

      Data Source=Servername;Initial Catalog=DatabaseName;Integrated Security=True
      
    2. 问候!

答案 2 :(得分:0)

该错误表明您的应用程序设置为使用“受信任”(即Windows)凭据登录,并且该程序运行的Windows帐户没有在服务器上登录。根据您添加用户的方式,我猜测它是一个SQL登录,您应该更改连接字符串以反映这一点。

答案 3 :(得分:0)

我在我的机器上创建了用户(安装了ms sql) 用户名也是user1和密码。 我可以在这个用户(user1)上登录Ms sql server 我的连接字符串是:

string connectionStr = @"Data Source = rmzcmp\SQLExpress; Initial Catalog = ResourcesTmp; User Id = user1; Password = user1;";

我是用户MS SQL Server 2008

rmzcmp是我的电脑名称。 在ResourcesTmp(我的数据库) - >安全 - >我拥有的用户:dbo,guest,INFORMATION_SCHEMA,sys,user1,user2 我没有sa用户。 User1具有以下权限: 该用户拥有的架构: db_accessadmin 拥有db_datareader db_datawriter权限 数据库角色成员 db_accessadmin 拥有db_datareader db_datawriter权限 的db_owner

服务器属性 - >权限 - >显式标签: 连接SQL:Grantor sa,Grant true。 User1所有复选框都有false

安全标签 - >服务器身份验证:正如我在前面的帖子

中提到的那样,选择了SQL Serve和Windows身份验证模式

此致

答案 4 :(得分:0)

如果用户尝试使用无法验证的凭据登录,则会出现此问题。在以下情况下可能会发生此问题:

方案1:登录可能是SQL Server登录,但服务器只接受Windows身份验证。

方案2:您尝试使用SQL Server身份验证进行连接,但SQL Server上不存在使用的登录。

方案3:登录可能使用Windows身份验证,但登录是无法识别的Windows主体。无法识别的Windows主体意味着Windows无法验证登录。这可能是因为Windows登录来自不受信任的域。

要解决此问题,请按照适用于您的方案的步骤操作。 方案1:在混合身份验证模式下配置SQL Server。

SQL Server 2012,SQL Server 2008和SQL Server 2005 打开SQL Server Management Studio。为此,请依次单击“开始”,“所有程序”,“Microsoft SQL Server 200x(其中x是SQL的版本)”,然后单击“SQL Server Management Studio”。 右键单击服务器,然后单击“属性”。见图。 在“安全性”页上的“服务器身份验证”下,单击“SQL Server和Windows身份验证模式”选项按钮,然后单击“确定”。见图。 在“SQL Server Management Studio”对话框中,单击“确定”以重新启动SQL Server。

请参阅http://support.microsoft.com/kb/555332