我正在使用pyVmomi来实现自动化。现在我正在测试VM,默认情况下SSH是禁用的,我必须在第一次登录时更改密码:
您必须立即更改密码(根强制)
如果我尝试使用pyVmomi的StartProgramInGuest
连接,就会得到vim.fault.InvalidGuestLogin
异常:
未能使用提供的凭据与来宾操作系统进行身份验证
我正在寻找一种以编程方式更改默认密码的方法,(最好)使用pyVmomi。
发布于 2021-03-26 23:44:29
首先,似乎在调用"StartProgramInGuest“函数时未能传递正确的凭据,可以使用名称-密码认证指定凭据并将凭证传递给该函数,如下所示。
creds = vim.vm.guest.NamePasswordAuthentication(username='username', password='password)
对此进行测试,并确保您成功地通过了客户虚拟机身份验证。在您能够成功地进行身份验证之后,您可以使用过程管理器创建一个Linux或Windows来更改您的密码。例如,下面是在Windows10虚拟机上测试的PowerShell进程,通过StartProgramInGuest执行。
argument= vim.vm.guest.ProcessManager.ProgramSpec(programPath='powershell.exe -Command', arguments='"& {net user loginid newpassword;}"')
res = pm.StartProgramInGuest(vm, creds, argument)
如果你需要澄清,请告诉我!
https://stackoverflow.com/questions/64968841
复制相似问题