使用Java检测vSphere client SDK中当前用户是否具有管理员权限
我正在使用vim25库建立与vCenter的连接,我可以使用以下代码登录:使用Java检测vSphere client SDK中当前用户是否具有管理员权限,java,vmware,vsphere,vcenter,Java,Vmware,Vsphere,Vcenter,我正在使用vim25库建立与vCenter的连接,我可以使用以下代码登录: vimport.login(serviceContent.getSessionManager(),用户名,密码,null) 现在,我想检查该用户是否具有管理员权限,如何在vSphere client SDK的帮助下在Java中实现?vSphere client SDK用于构建UI插件,因此我假设您希望根据用户权限筛选插件扩展。 这是通过插件.xml清单中扩展定义上使用的元数据标记完成的 SDK文档及其解释和示例:,“基于
vimport.login(serviceContent.getSessionManager(),用户名,密码,null)代码>
现在,我想检查该用户是否具有管理员权限,如何在vSphere client SDK的帮助下在Java中实现?vSphere client SDK用于构建UI插件,因此我假设您希望根据用户权限筛选插件扩展。
这是通过插件.xml
清单中扩展定义上使用的
元数据标记完成的
SDK文档及其解释和示例:,“基于用户权限级别的过滤”部分。vSphere权限模型有两个方面:
- vCenter权限,这些权限组合成角色,然后分配给用户或组,作为对vCenter资源清册特定部分的权限。通常,每个vCenter操作都会根据用户对对象的操作的实际权限进行验证。因此,原则上,您需要检查是否具有特定权限,而不是他是否是管理员。第二个更像是来自内置管理员角色的第二个概念,该角色具有全套权限,但在库存的某些部分上可能根本不会授予用户权限。我的建议是弄清楚您关心的实际权限是什么,以及您需要检查库存的哪些部分。有些API(全局单例管理对象(如TaskManager)上的API)只检查在根文件夹级别授予的权限
- SSO组-一些服务检查SSO令牌是否包含关于特定组成员身份的声明。这通常由与身份验证相关的服务完成,这些服务不能依赖vCenter权限。给出您的示例,我假设您没有获得SSO令牌,并且不关心此模型
您能详细说明您的用例吗?“用户是否具有管理员权限”的问题没有明确定义。在vSphere中,角色(例如admin)是特权的集合(例如添加主机、删除VM等)。权限
从广义上讲是将特定实体的角色
分配给给定用户。例如,用户Mayur
是特定VM文件夹的admin
。因此,您可以检查用户是否具有特定对象的管理员角色,或者您可以检查用户是否具有给定对象的特定权限(即使不是管理员,他们也可以拥有该权限)。另请参阅。非常感谢YSK,我是最新使用vsphere client sdk的人,因此我正在搜索示例以供参考。但是你的信息对我很有帮助。我试试看。再次感谢你。