在 Windows 上的 SSH shell 中运行时提升至管理员权限

oli*_*ren 10 ssh uac powershell command-line

我正在通过 SSH登录 GCP 上的 Windows Server 2016 盒子。这让我登录到 powershell 会话,但我需要拥有管理员权限才能成功运行一些命令。我没有另一个管理员帐户,所以我基本上需要以某种方式提升当前会话,以管理员身份启动一个新的 shell,或者找到一种在我自己提升到管理员状态时运行命令的方法。

我知道该runas命令,但我只能看到以其他用户身份运行的方式,而无法将自己提升为管理员角色。我基本上想要sudoWindows :)

请记住,我无法使用需要正常 UAC 提示的方法来解决此问题,因为该提示需要在图形环境(通常是 RDP)中使用鼠标/键盘来处理。

har*_*ymc 3

要在没有 UAC 提示的情况下运行提升的命令,需要使用任务计划程序。据我所知,所有其他解决方案都需要 UAC 提示才能工作。

这个想法是创建一个带有从未激活的触发器的计划任务,因此只能使用以下命令手动运行:

schtasks /run /tn "task-name"
Run Code Online (Sandbox Code Playgroud)

有关详细信息,请参阅今天仍然基本正确的文章:
Windows 7:没有 UAC 提示的提升程序快捷方式 - 创建

请注意,您应该为该任务指定您的用户帐户,该帐户必须具有管理员权限,并指定“以最高权限运行”以使用提升的权限令牌而不是默认的最低权限 (UAC) 令牌来运行该任务。

任务可以执行一个命令。这可以是一个批处理脚本,您将在其中放置(可能是动态的)要运行的命令。请注意,如果其他人发现此任务,这将是一个巨大的安全漏洞。