SQL Server 2008错误18452登录来自不受信任的域,不能与Windows身份验证一起使用

时间:2012-06-15 22:10:25

标签: sql windows sql-server-2008 active-directory windows-authentication

我想知道发生了什么。这是我们的设置: 我们有四个相互复制的SQL服务器。

我们向Windows Active Directory添加一个新用户,并将它们添加到我们多年来一直使用的SQL Server组中。

当尝试使用Windows身份验证进行身份验证时,新用户会在主题行中返回该错误。但是,以前在Active目录中的任何用户都可以正常工作。

有一次我让SQL Server“陷入困境”,因为我们有一组用户因为这个错误而无法登录。我对SPN进行了一些更改,最终制作了它,所以没有人可以登录。然后我意识到SPN应该如何查看并修复它。然后我猜一些魔法发生了,那些用户能够进行身份验证。我认为这是固定的,但显然不是因为我们必须添加一个新用户,他们无法进行身份验证。

有趣的是,用户可以使用四个SQL Server中的三个进行身份验证。只有这一台服务器工作不正常。我在这个sql server上为SQl服务设置了两个SPN。

他们看起来像 -

为MSSQLSvc / [服务器] [域]。本地:1433

为MSSQLSvc / [服务器]:1433

这些实际上已注册到我们用于SQL Server的服务帐户。有趣的是,我找不到适用于任何地方的服务器的SPN。

任何帮助将不胜感激!

编辑:另外,需要注意的另一点是,如果我尝试将用户直接添加为登录SQL服务器。我右键单击登录并单击添加登录,然后单击搜索。然后我输入[Domain] \ [Username]并单击检查名称。它验证名称是否正确。然后我单击确定。然后再次确定,它会给错误Windows NT用户或组'[域名] \ [用户名]'找不到。再次检查名称。

1 个答案:

答案 0 :(得分:3)

  

我认为这是固定的,但显然不是我们必须添加一个   新用户,他们无法进行身份验证。

用户必须重新登录才能获得新组。否则,它的kerberos票仍在其PAC中使用旧的组成员资格信息

  

这些实际上已注册到我们用于的服务帐户   SQL Server。有趣的是我无法找到SPN   在任何地方工作的服务器。

我认为发生的情况是您有一台SQL Server正常设置SPN,而其他三台SQL Server根本没有设置SPN。因此,您将在此特定服务器上使用Kerberos,而在其他三个服务器上使用NTLM。

如前所述,当您使用Kerberos时,您必须使用某些工具清除故障单,或者必须重新登录以获取新的组成员身份。您也可以尝试锁定屏幕然后解锁。如果我没记错的话,这也应该刷新票证。

与Kerberos不同,NTLM不携带group memberhsip数据。在SQL Server使用NTLM对用户进行身份验证后,它将找到经过身份验证的用户的组成员身份,包括刚刚添加的新组。