- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The below code worked for me:
#imports
from pyVmomi import vim, vmodl
from pyVim import connect
import ssl
#Use below code after fetching session clone ticket from "/vcenter/session/clone-ticket" API
if hasattr(ssl, '_create_unverified_context'):
ssl._create_default_https_context = ssl._create_unverified_context
stub = connect.SmartStubAdapter(host="vcenter-fqdn/IP")
si = vim.ServiceInstance("ServiceInstance", stub)
content = si.RetrieveContent()
try:
user_session = content.sessionManager.CloneSession(session_clone_ticket)
session_id = si.content.sessionManager.currentSession.key
auth_manager = si.content.authorizationManager
root_folder = si.content.rootFolder
privileges = ["VcIntegrity.lifecycleSettings.Read","VcIntegrity.Baseline.com.vmware.vcIntegrity.AssignBaselines","VcIntegrity.Baseline.com.vmware.vcIntegrity.ManageBaselines","VcIntegrity.General.com.vmware.vcIntegrity.Configure"]
result = auth_manager.HasPrivilegeOnEntity(root_folder, session_id, privileges)
except Exception as ex:
print(f'Something went wrong cloning the session {ex}')