【发布时间】:2015-09-02 16:19:50
【问题描述】:
我正在尝试在我的 PowerShell 脚本中运行特定的命令行函数。问题是该命令需要提升权限才能执行。
这是一个精简的例子:
# PowerShell code...
query session /server:"SERVERNAME" #NEEDS ELEVATED PERMISSIONS
# More PowerShell code
query 命令需要在提升的权限下运行。
我尝试了以下方法:
Invoke-Command -ScriptBlock {
query session /server:"SERVERNAME"
} -Credential get-credential
但这不起作用,因为在使用-Credential 参数时需要存在-ComputerName 参数。我希望能够在不使用远程服务器的情况下运行它。
我知道我可以通过让用户在提升的帐户凭据下启动 PowerShell 来解决这个问题,但我宁愿在脚本运行时提示输入凭据,并在他们的管理员帐户凭据下运行该单个命令。在正常凭据下,脚本所做的一切都很好。
【问题讨论】:
-
使用
-Computername $Env:Computername在本地系统上运行Invoke-Command。
标签: powershell cmd credentials