esx: Avoid using vSphere SessionIsActive function
A login session with the vSphere API might expire after some idle time. The esxVI_EnsureSession function uses the SessionIsActive function to check if the current session has expired and a relogin needs to be done. But the SessionIsActive function needs the Sessions.ValidateSession privilege that is considered as an admin level privilege. Only vCenter actually provides the SessionIsActive function. This results in requiring an admin level privilege even for read-only operations on a vCenter server. ESX and VMware Server don't provide the SessionIsActive function and the code already works around that. Use the same workaround for vCenter again. This basically reverts commit 5699034b.
Showing
想要评论请 注册 或 登录