SQL Server 的 Kerberos 配置管理器错误“无法从系统访问用户主体信息”

SQL Server 的 Kerberos 配置管理器错误“无法从系统访问用户主体信息”

当我启动 SQL Server 的 Kerberos 配置管理器并尝试连接到它所在的本地计算机时,出现错误“SQL Server 的 Kerberos 配置管理器错误“无法从系统访问用户主体信息””

谷歌搜索返回的结果很少。

http://social.technet.microsoft.com/Forums/en-US/717d6821-f3f4-43a6-8bba-5eb4804df499/无法访问用户主体信息来自系统错误尝试启动kerberos时?forum=sqltools

http://social.msdn.microsoft.com/Forums/sqlserver/en-US/717d6821-f3f4-43a6-8bba-5eb4804df499/无法访问用户主体信息来自系统错误尝试启动kerberos时?forum=sqltools

我使用单个帐户在单个域中工作。此系统上的所有用户都不是孤立的,也不会显示 GUID 而不是其 ID。

我确实想使用这个工具来帮助解决我的 Reporting Services Kerberos 问题。

该工具生成的日志显示以下错误:

9/16/2014 11:43:05 AM Info: Connect to WMI, \root\cimv2
9/16/2014 11:43:37 AM Error: Access of system information failed System.Runtime.InteropServices.COMException (0x80070035): The network path was not found.

   at System.DirectoryServices.DirectoryEntry.Bind(Boolean throwIfFail)
   at System.DirectoryServices.DirectoryEntry.Bind()
   at System.DirectoryServices.DirectoryEntry.get_AdsObject()
   at System.DirectoryServices.PropertyValueCollection.PopulateList()
   at System.DirectoryServices.PropertyValueCollection..ctor(DirectoryEntry entry, String propertyName)
   at System.DirectoryServices.PropertyCollection.get_Item(String propertyName)
   at System.DirectoryServices.AccountManagement.SAMStoreCtx.ResolveCrossStoreRefToPrincipal(Object o)
   at System.DirectoryServices.AccountManagement.SAMMembersSet.MoveNextForeign()
   at System.DirectoryServices.AccountManagement.SAMMembersSet.MoveNext()
   at System.DirectoryServices.AccountManagement.FindResultEnumerator`1.MoveNext()
   at System.Linq.Enumerable.Contains[TSource](IEnumerable`1 source, TSource value, IEqualityComparer`1 comparer)
   at KerberosCM.WMIHelper.TryIsUserLocalAdmin(SystemInfo si, UserPrincipal user, Boolean& isLocalAdmin)
9/17/2014 8:36:08 AM Info: Connect to WMI, \root\cimv2
9/17/2014 8:36:10 AM Error: Access of system information failed System.Runtime.InteropServices.COMException (0x80070035): The network path was not found.

   at System.DirectoryServices.DirectoryEntry.Bind(Boolean throwIfFail)
   at System.DirectoryServices.DirectoryEntry.Bind()
   at System.DirectoryServices.DirectoryEntry.get_AdsObject()
   at System.DirectoryServices.PropertyValueCollection.PopulateList()
   at System.DirectoryServices.PropertyValueCollection..ctor(DirectoryEntry entry, String propertyName)
   at System.DirectoryServices.PropertyCollection.get_Item(String propertyName)
   at System.DirectoryServices.AccountManagement.SAMStoreCtx.ResolveCrossStoreRefToPrincipal(Object o)
   at System.DirectoryServices.AccountManagement.SAMMembersSet.MoveNextForeign()
   at System.DirectoryServices.AccountManagement.SAMMembersSet.MoveNext()
   at System.DirectoryServices.AccountManagement.FindResultEnumerator`1.MoveNext()
   at System.Linq.Enumerable.Contains[TSource](IEnumerable`1 source, TSource value, IEqualityComparer`1 comparer)
   at KerberosCM.WMIHelper.TryIsUserLocalAdmin(SystemInfo si, UserPrincipal user, Boolean& isLocalAdmin)

答案1

我知道这是一个非常古老的帖子,但对于仍然遇到此问题的人来说......我设法通过进入服务器上的本地管理员组并清除所有显示为 GUID 的帐户来解决这个问题。

完成此操作后,我就可以启动该工具,无需填写服务器/用户信息,只需点击连接即可。之后它立即登录。

(我知道原始发帖人说他已经检查过了,但这为我解决了这个问题)。

答案2

我知道这个帖子很老了,但我遇到了同样的问题。就我而言,远程注册表服务没有运行。我发现在某些服务器上它只是在运行,而在其他服务器上它显示为自动(触发启动),在这两种情况下我都可以成功使用该工具。如果服务是手动/禁用的等...并且没有运行,则会发生此错误。

答案3

我的答案与其他答案类似,但略有不同。我在本地管理员组中有一个来自其他域的帐户。我不确定存在的确切信任类型。删除该帐户后,该工具就可以运行了。

答案4

遇到了完全相同的问题,我如何解决?

我转到服务器上存在 SPN 问题的本地用户和组(组 > 管理员 >),并删除了不属于与服务器同一域的所有帐户。

我有一个来自另一个域的用户帐户,删除它并再次尝试该应用程序后,它就可以正常工作了。

干杯。

相关内容