33

这个 Stack Overflow 问题提出了一个看起来应该可以工作的命令,但实际上并没有(不过,该答案现在已被删除):

在包含密码的 Window 7 上以不同用户身份运行的单行命令

命令将是:

echo PaSsWoRd | runas /user:Administrator cmd

然而它说:

未知的用户名或错误的密码。

虽然细节绝对正确。例如,如果我要运行:

runas /user:Administrator

...在下一行,如果我输入PaSsWoRd,它不会有问题。

4

1 回答 1

44

runas 命令不允许在其命令行上输入密码。这是设计使然(也是您无法通过管道将密码作为输入的原因)。Raymond Chen 说得很好:

RunAs 程序要求您手动键入密码。为什么它不接受命令行上的密码?

这是一个有意识的决定。如果可以在命令行上传递密码,人们就会开始将密码嵌入到批处理文件和登录脚本中,这是可笑的不安全。

换句话说,缺少该功能以消除不安全地使用该功能的诱惑。

于 2013-04-20T03:44:08.633 回答