当一个域控制器宕机时,WCF Kerberos SSPI 失败

4
我的WCF服务使用Kerberos的Windows身份验证,我们禁用了NTLM。该服务在一个域用户账户下运行,客户端在不同的域用户账户下运行。并且两者都使用UPN进行配置。客户端和服务均位于相同的域中。该域有两个域控制器。
当两个域控制器都在线时,客户端与服务之间的通信顺畅无阻。但如果其中一个域控制器宕机,我会收到以下错误:
A call to SSPI failed, see inner exception. ---> System.Security.Authentication.AuthenticationException: A call to SSPI failed, see inner exception. ---> System.ComponentModel.Win32Exception: The system detected a possible attempt to compromise security. Please ensure that you can contact the server that authenticated you.
请指教应该如何消除这个错误。谢谢。

2
我怀疑一个或两个域控制器存在配置错误。这里有一些非常通用的信息链接。是否可以启用WCF跟踪,然后发布记录错误的跟踪部分? - Andrew
1
@JohnHpa,这个错误意味着您正在重复使用门票。在这种情况下,我假设应用程序(客户端/服务)是在线的,第二个DC已关闭。如果您在关闭DC之后启动应用程序会出现什么情况?此外,您是代表用户获取门票还是依靠操作系统模拟?具体来说,如果用户登录到不可用的DC上,则应用程序可能尝试使用他们从该DC获得的门票,而这在服务中是无法验证的。 - zaitsman
感谢@zaitsman。获取票据取决于操作系统。我需要尝试在DC关闭后启动应用程序。我还没有尝试过。 - John Hpa
1个回答

4

我碰巧知道这个问题。我花了2个半天的时间来解决这个问题,它在我的60台工作站网络中造成了绝对的混乱。啊啊啊!我快要把头发都拔光了。我从2005年起就是MCSE。

问题出在IP6上。我们更换的Comcast商业路由器正在向我的局域网推送隐藏范围,并替换了域内的IP4地址范围。这意味着域名无效,因为IP6将其清除。我关闭工作站上的IP6协议后,错误消失了。

值得一提的是还有其他问题-打印、应用软件-这真是我人生中在局域网上遇到的最糟糕的经历之一。虽然只是一个简单的修复,但我在网上找不到答案。希望这可以帮助到其他人。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接