以用户身份在远程Windows Server上运行命令

我想在远程Windows服务器上以我在Windows中login的用户身份运行命令。 我该怎么做呢?

您可以使用SysInternals Suite附带的PSEXEC命令,也可以使用PowerShell的Invoke-Command 。 我会让你检查这些链接,根据你的环境和你想运行的命令的types来select正确的语法。

使用psexec : https : //technet.microsoft.com/en-us/sysinternals/bb897553.aspx

我build议阅读文档中链接到的文档和几页。 有几个疑难杂症, psexec可以是一个相当强大的工具。

我可能会在这里丢失一些东西,但是当你login到一个远程机器并执行一个命令时,这个命令的确在你login的用户凭证下运行。

你可以看到这发生在任务pipe理器

另一方面,psexecbuild立到远程计算机的连接,并使用您在psexec命令行中指定的凭据运行命令 – 但是您的问题听起来像您已经通过(RDP ???)login,只需执行命令?

我误解了你的问题/configuration吗?

在目标服务器上启用Powershell远程处理,然后在Invoke-Command -ComputerName RemoteSeverName -ScriptBlock { some command }使用Powershell的Invoke-Command -ComputerName RemoteSeverName -ScriptBlock { some command }

默认情况下,将使用协商或Kerberos身份validation,因此该命令将以运行Powershell的用户身份运行,而不必指定凭据。

你也可以尝试rsh如果你想要的是操作系统的东西,但不是Powershell,但我不记得它是否会使用你现有的authentication上下文。 因为它像Powershell远程处理一样依赖于WinRM,所以我认为它会,但是我在我的手机上,无法testing它。

我不认为psexec做你想要的,因为你必须提供凭据。