runas 与 Start-Process - Start-Process 打开的控制台中无需键盘输入(或任何键盘输入)

runas 与 Start-Process - Start-Process 打开的控制台中无需键盘输入(或任何键盘输入)

我想使用其他人的凭据打开控制台。通常我使用以下命令执行此runas操作:

C:\> runas /user:$(cat ~\.ssh\ek | select -first 1) pwsh
Enter the password for ***:
Attempting to start pwsh as user *** ...
C:\>

输入密码后,我可以看到控制台打开了,并且运行良好。

但是,我不喜欢每次都要输入密码。

PowershellStart-Process应该会有所帮助,因为我可以向其传递一个凭据对象。例如:

C:\> $creds = Import-Clixml -Path ~/.ssh/ek.creds
C:\> Start-Process pwsh -Credential $creds -WorkingDirectory ***
C:\>

最后控制台打开了,但我无法使用键盘——打字或粘贴时没有任何反应。

我错过了什么?

答案1

这是一个长期存在的错误,由 -Credential 参数引起。当您省略该参数时,控制台不会冻结。

相关 Github 问题

要解决此问题,请将您的凭证存储在凭证管理器中

runas /user:$(cat ~\.ssh\ek | select -first 1) /savecred pwsh

第一次调用时您必须输入密码,但所有后续调用都将无需交互即可进行,直到您从凭据管理器中清除密码。从安全角度来看,这与在磁盘上存储加密文件一样安全。

相关内容