VMware vSphere 5.5 任何身份验证尝试均失败

VMware vSphere 5.5 任何身份验证尝试均失败

在基于 VMWare vSphere 5.5 Windows 的环境中,任何身份验证尝试都会失败(需要一些时间)。

日志中提到如下行:

ERROR  [IdentityManager] Failed to find solution user 
by subject DN [1.2.840.113549.1.9.1=#1612737570706f727440766d776172652e636f6d,CN=localdomain.local,OU=VMware\, Inc.,O=VMware\, Inc.] in tenant [vsphere.local] 
ERROR  [ServerUtils] Exception 'java.lang.IllegalStateException: More than one solution user found' 

可能是什么原因?

答案1

发生了什么

不确定发生了什么,但也许完整的描述对某些人有帮助。

通常在端口 11711 上运行的 vSphere 内部 LDAP 目录最终出现了损坏的条目。这导致了奇怪的观察结果 - 可以对例如 webclient 进行身份验证,但无法在那里执行更多操作,因为它充斥着诸如“客户端未通过 VMware Inventory Service 身份验证 -https://我的服务器FQDN:10443

解决方案

使用 LDAP 客户端(例如 LDAPAdmin)根据以下连接条件登录到服务器:

host:          localhost
port:          11711
version:       3
Base:          dc=vsphere,dc=local
Username:      cn=Administrator,cn=Users,dc=vsphere,dc=local
Password:      the one for [email protected]

导航到cn=ServicePrincipals并检查它们vmwSTSSubjectDN以确保它们是唯一的。不确定哪些是正确的。在其他一些安装中,我发现:

InventoryService                1.2.840.113549.1.9.1=#1612737570706f727440766d776172652e636f6d,CN=VMware default certificate,OU=InventoryService_2013.07.31_145941,O=VMware\, Inc.
vCenterServer                   1.2.840.113549.1.9.1=#1612737570706f727440766d776172652e636f6d,CN=VMware default certificate,OU=vCenterServer_2013.07.31_150056,O=VMware\, Inc.

但最后部分(OU=,O=)可能由于某种原因而不同

类似问题的提示

我发现有用的是反编译 vSphere 安装中某个 JAR 中的类com.vmware.identity.idm.server.provider.vmwdirectory.VMwareDirectoryProvider。结果发现它包含一些硬编码的 LDAP 查询,这些查询可能对 VMWare 内部 LDAP 服务器的其他故障排除有用。(出于许可原因,我最好不要将其粘贴在这里)。对于反编译第三方 Java 类,我学会了使用http://www.javadecompilers.com。CFR 的效果确实很好。

相关内容