【发布时间】:2015-10-05 18:57:44
【问题描述】:
我经常使用一个脚本,其中要求使用备用凭据来调用远程服务器上的命令。挑战是我每次运行脚本时都必须输入凭据。
有没有办法将凭据存储在当前活动的 powershell 会话中?例如,在第一次执行脚本时,它应该要求提供凭据,而脚本的后续运行不应要求提供凭据。
我在我的脚本中提出了这段代码,但是当我将 $cred 变量传递给 -Credential 参数时,它没有按预期工作。
New-Variable -Name Env -Value @{} -Scope GLOBAL -Force
If (Test-Path Variable::global:Env)
{
$cred = $global:Env
}
Else
{
New-Variable -Name Env -Value @{} -Scope GLOBAL -Force
$cred = $global:Env.(Get-Credential) | Out-Null
}
你能帮忙指出我哪里出错了吗?
谢谢!!
【问题讨论】:
-
@PetSerAl,我在我的脚本中也尝试过,但每次执行脚本时我仍然不断收到凭据提示。我认为这是因为每次执行脚本时都会调用(Get-Credential)。
-
@PetSerAl 我已经编辑了我原来的问题。你能指出我哪里出错了吗?
标签: powershell session