我们有以下设置:
- 一个域控制器(DC,Server 2003 R2 Standard x64)
- 一台SQL Server(SQL,Server 2008 R2 Standard x64)
- 一些客户。
所有计算机都在同一域中。所有正在使用的用户帐户都是域帐户。SQL会为每个SQL Server 2005、2008、2008R2、2012和2014运行一个实例。
自从今晚(重新启动DC以安装自动Windows安全更新)以来,通过Windows身份验证访问SQL 2005、2008和2008R2实例不再正常工作:
当访问这些实例之一时
- 来自一位客户
- 使用Windows身份验证
发生以下错误(这是2008R2消息,2005/2008消息类似):
登录失败。该登录名来自不受信任的域,不能与Windows身份验证一起使用。(Microsoft SQL Server,错误:18452)
显然,消息文本不适用,因为只有一个域。
现在令人惊讶的是:用户登录SQL(启动RDP sesson甚至只是运行runas /user:MYDOMAIN\someuser cmd并保持窗口打开)后,该用户就可以从所有客户端访问所有SQL Server实例,而不会出现任何问题,直到使用该用户的凭据已关闭。
这意味着我可以通过对SQL上的所有用户执行一次以上的runas命令(并使窗口保持打开状态)来解决此问题,但是显然,某些东西已经严重损坏。我怀疑今晚DC上的安全更新与它有关(因为这是唯一更改的事情),但我宁愿避免卸载并重新启动其中的每个更新(已安装12个更新,并且DC确实旧且缓慢)。
有没有人曾经遇到过这个问题,并且知道如何永久修复它?还有其他想法(除了接下来几天要成为Kerberos专家以外)?
您检查DC的时钟了吗?虽然我无法解释实例差异,但是DC的时钟错误确实会导致您在限制自己查看一个实例时的解释行为。另外,您可能希望在寿命即将到期时考虑升级DC OS。
—
Reaces
@Reaces:感谢您的提示,但是时钟是完全同步的。是的,DC是计划更换的下一台机器。
—
Heinzi