我正在尝试使用 VIM25 库检查vCenter用户是否对root文件夹具有权限。我正在使用 hasPrivilegeOnEntity 方法。
vimport.hasPrivilegeOnEntity(authorizationManager, rootFolder, userSessionKey, privilages);
以上代码适用于vCenter Server 6.0但不适用于5.5,会出现以下异常。
com.sun.xml.internal.ws.fault.ServerSOAPFaultException: Client received SOAP Fault from server: A general system error occurred: Authorize Exception Please see the server log to find more detail regarding exact cause of the failure.
at com.sun.xml.internal.ws.fault.SOAP11Fault.getProtocolException(SOAP11Fault.java:178)
at com.sun.xml.internal.ws.fault.SOAPFaultBuilder.createException(SOAPFaultBuilder.java:124)
at com.sun.xml.internal.ws.client.sei.StubHandler.readResponse(StubHandler.java:238)
at com.sun.xml.internal.ws.db.DatabindingImpl.deserializeResponse(DatabindingImpl.java:189)
at com.sun.xml.internal.ws.db.DatabindingImpl.deserializeResponse(DatabindingImpl.java:276)
at com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:104)
at com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:77)
at com.sun.xml.internal.ws.client.sei.SEIStub.invoke(SEIStub.java:147)
at com.sun.proxy.$Proxy37.hasPrivilegeOnEntity(Unknown Source)
详细信息:发生了一般系统错误:授权例外
答案 0 :(得分:3)
我们使用某些权限来检查登录用户的特定实体。 VMware有一系列权限。
vCenter 5.5具有265个权限,vCenter 6.0具有310个权限。
在我的代码中,我检查了属于vCenter 6.0的根文件夹(适用于vCenter 5.5)的权限,并获得了异常。
在更正权限列表后,一切顺利。
在编写代码时,我们应该拥有vCenter 5.5和6.0常见的权限列表。或根据您的要求只有2个不同的列表。