首页 > 解决方案 > 查询 vSphere 7 的 SOAP 错误 - 缺少 root.childEntity

问题描述

我有一个使用 PHP 5.3 Soap Client(我知道...)的遗留进程通过 SOAP API 查询多个 vCenter。

在大多数情况下,此过程有效,但是该过程连接到的一些 vCenter 最近升级到 vSphere 7 并引发错误。查看 /mob,vcenter 的结构实际上看起来是一样的,但是从根文件夹向下钻取到数据中心时会引发错误。

这是初始查询:

$pathSet = array('childEntity');
$result = $this->queryPropertyCollector('Folder', $pathSet, $this->ServiceContent->rootFolder);

如果我检查 $result,则缺少一组:

---Missing Set: stdClass::__set_state(array(
'path' => 'childEntity',
'fault' =>
stdClass::__set_state(array(
'fault' =>
stdClass::__set_state(array(
'object' =>
stdClass::__set_state(array(
'_' => 'group-d1',
'type' => 'Folder',
)),
'privilegeId' => 'System.View',
)),
'localizedMessage' => '',
)),
))

我很好奇 priviledgeId 线是否指向任何东西。管理 vcenter 的团队表示已为相关用户重置了访问权限,我可以使用同一用户登录 /mob 并通过这一点。尽管仍然有点像权限问题。

任何指针将不胜感激。

标签: soapvspherevcenter

解决方案


推荐阅读