【问题标题】:this user is not associated此用户未关联
【发布时间】:2011-01-23 15:58:57
【问题描述】:

Machine X(安装了 SQL Server 2005 Express 版本的主机 PC,也称为开发 PC)

机器 Y(未知用户或访客)

我可以从机器 X 设置和获取数据,但是当朋友尝试这样做时,他们会收到以下错误

用户没有与 受信任的 sql server 连接

我使用 windows auth.. 我的连接字符串如下:

string ConnectionString="Data Source=IP.IP.IP.IP,1433;Network Library=DBMSSOCN;Initial Catalog=master;Integrated Security=SSPI;";

我检查了所有内容,但似乎是 SQL 或我的计算机中的权限问题。 防火墙已关闭,AVG 防病毒软件也已关闭

提前致谢

【问题讨论】:

标签: c# sql-server sql-server-2005 connection


【解决方案1】:

该错误的含义与它所说的差不多 - SQL Server 无法对用户进行身份验证。

这通常发生在用户未作为域成员登录时,例如,如果他们使用特定于该计算机的帐户而不是使用其域帐户登录到他们的计算机。

有几种方法可以解决这个问题。

  1. 最明显的是确保他们以域用户身份登录到他们的计算机。

  2. 将 SQL 服务器的权限授予他们正在使用的用户帐户。如果他们的机器不是域的成员,不确定如何执行此操作。

  3. 推荐方法他们可以修改 SQL Server Management Studio 快捷方式(或创建新快捷方式)以使用 runas 命令,该命令将使用您提供的凭据运行指定的可执行文件(即,他们冒充不同的用户来执行该应用程序及其执行的操作)。他们需要在服务器中拥有一个用户帐户才能使其正常工作。

例子:

C:\Windows\System32\runas.exe /netonly /user:MYDOMAIN\USERNAME ssms.exe

当您运行此程序时,系统会提示您输入用户 mydomain\username 的密码。当我从家里的机器上 VPN 时,我用它来连接到我工作中的 SQL Server,它工作正常。

另一个稍微简单的选项是让它们使用 SQL Server 身份验证进行连接。您需要为每个用户创建一个 SQL Server 帐户,或者他们都可以使用的通用帐户,当然,还要给他们密码。

【讨论】:

  • 如果他们没有安装 SSMS 怎么办?
  • 如果他们不尝试连接 SSMS,他们使用的是什么?如果它是他们正在运行的应用程序,您应该为该应用程序创建一个 SQL Server 帐户并更改其连接字符串以使用它。
【解决方案2】:

Ivan,您使用的是Windows Authentication Mode (Windows Authentication),您有两种选择来处理您的问题。

1) 更改为SQL Server Authentication,要在您的连接字符串中执行此操作,您必须在每次连接时提供凭据(登录名和密码)并验证您的 Sql Server 在SQL Server Authentication Mode and Windows Authentication mode 中运行。检查此page 以查看当前连接字符串的替代方案。

2) 保留Windows Authentication Mode。您必须将该用户的帐户添加到运行 SQL Server 的 Windows 服务器中。

【讨论】:

  • 对于备选方案 2,我必须采取哪些步骤?
猜你喜欢
  • 2015-01-28
  • 2013-11-06
  • 1970-01-01
  • 2020-07-23
  • 1970-01-01
  • 2019-07-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多